7 个版本 (1 个稳定版本)
1.0.0 | 2023年11月21日 |
---|---|
0.2.1 | 2022年11月26日 |
0.1.3 | 2022年11月13日 |
#4 在 #Redux
每月32次下载
16KB
157 行
App-Universe
基于 app-world 的不依赖框架的前端应用程序状态管理方法。
示例用法
mod app_universe;
use app_universe::{ AppUniverse, AppUniverseCore };
struct TestAppState {
counter: u8,
}
pub enum Msg {
Increment(u8),
}
impl AppUniverseCore for TestAppState {
type Message = Msg;
fn msg(&mut self, message: Self::Message) {
match message {
Msg::Increment(value) => {
self.counter += value;
}
}
}
}
fn main () {
let state = TestAppState { counter: 0 };
let mut universe = AppUniverse::new(state);
universe.msg(Msg::Increment(1));
let subscription = universe.subscribe(Box::new(move |universe| {
println!("Counter value is {}", universe.read().counter);
}));
universe.msg(Msg::Increment(1));
universe.unsubscribe(subscription).unwrap();
}