stellation_frontend/components/
client_only.rs1use std::ops::Deref;
2
3use yew::html::ChildrenProps;
4use yew::prelude::*;
5
6#[function_component]
8pub fn ClientOnly(props: &ChildrenProps) -> Html {
9 let should_render = use_state(|| false);
10
11 {
13 use_effect_with_deps(
14 |should_render_setter| {
15 should_render_setter.set(true);
16 },
17 should_render.setter(),
18 );
19 }
20
21 match should_render.deref() {
22 true => html! {<>{props.children.clone()}</>},
23 false => Html::default(),
24 }
25}