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();
}