modx is an experimental way to handle states with structs in Dioxus inspired by mobx.
#[modx::store]
struct CounterStore {
count: i64,
}
impl CounterStore {
fn inc(&mut self) {
self.count += 1;
}
fn dec(&mut self) {
self.count -= 1;
}
}
fn app() -> Element {
let mut store = CounterStore::new();
rsx! {
button { onclick: move |_| store.inc(), "+1" }
button { onclick: move |_| store.dec(), "-1" }
"{store.count}"
}
}
Documentation can be found at https://docs.rs/modx
There are some examples at ~/examples
so you can see how to use modx
and how it behaves.
You can run an example with:
cargo run --example this_example
with this_example
being the name of the file (without the extension)
In the near future, most of the hooks should be rewrote to work with modx.
Here is the current status:
- Signals
- Props
- Resources
- Memo
- Server future