Managing user consent with Yew
Add it to your project:
cargo add yew-consent
Then, add it your application component:
#[function_component(Application)]
fn application() -> Html {
let ask = use_callback((), |context, ()| html!(<AskConsent {context} />));
html!(
<Consent<()> {ask}>
<State/>
</Consent<()>>
)
}
And then, you can check consent later:
#[function_component(State)]
fn state() -> Html {
let consent = use_consent::<()>();
html!(
<>
<dl>
<dt>{"Consent state"}</dt>
<dd>{ format!("{consent:#?}")}</dd>
</dl>
</>
)
}
Also see the example here: example.
You can run the example using:
cd example
trunk serve