# yew-store **Repository Path**: zengsai/yew-store ## Basic Information - **Project Name**: yew-store - **Description**: A store for Yew. - **Primary Language**: Rust - **License**: MulanPSL-1.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2019-08-17 - **Last Updated**: 2021-06-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # yew-store #### 介绍 A store for Yew. 相当于 Redux 之于 React。 Rust 的 wasm 开发框架 Yew 最近更新比较快,已经相对好用。平时没事也用它写一些东西。但是Yew没有全局状态管理,写单页应用的时候比较费劲, 于是花了一些时间写了简单写了一个,开源出来,供有需要的同学使用吧! 目前功能还比较单一,设计也可能不太合理,但单线程环境下已经基本够用,非常欢迎社区同学一起改进它! #### 设计思路 用户自定义操作,现Update特性来控制该操作应该如何更新全局状态,然后将操作发给Store,Store调用操作的更新方法更新全局数据状态, 然后将产生的事件通知到已经订阅的组件。 #### 优点 1. Store和全局状态、操作、事件完全解耦。用户自定义全局状态,操作和事件。 2. 可以在Yew的任意组件中通过 store::connect_to_store 方法连接到 Store。 3. 连接Store时可以选择是否订阅Store事件。如果不关心全局状态的改变,可以不用订阅Store事件。 4. 任意Yew组件可以订阅Store事件,针对某个事件做出响应。 5. 完整的的样例帮助你快速搭建一个 Yew 应用。 #### 使用方法 使用简单,参考 examples/counters 。示例运行方法: 先要安装 rust,cargo,cargo-web,然后运行 ```shell cargo web start ``` 就可以在浏览器中查看了。