wasi-sol 0.0.7

🔒 A Solana Wallet adapter for WASM frameworks.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use dioxus::prelude::*;
use gloo_storage::{LocalStorage, Storage};

pub fn use_local_storage(key: String, initial_value: String) -> (String, Signal<String>) {
    LocalStorage::set(&key, &initial_value)
        .ok()
        .expect("Set LocalStorage");
    let stored_value = LocalStorage::get(&key).unwrap_or(initial_value.clone());
    let state = use_signal(|| stored_value.clone());

    use_effect(move || {
        LocalStorage::set(&key, &*state())
            .ok()
            .expect("Set LocalStorage");
    });

    (state.to_string(), state)
}