freya_core/lifecycle/
reactive.rs

1use crate::prelude::{
2    State,
3    use_state,
4};
5
6pub fn use_reactive<T: 'static + Clone + PartialEq>(value: &T) -> State<T> {
7    let mut state = use_state(|| value.clone());
8
9    if &*state.peek() != value {
10        state.set(value.clone());
11    }
12    state
13}