mentorenwahl/frontend/src/main.rs

40 lines
949 B
Rust

use std::rc::Rc;
use yew::prelude::*;
use yew_router::prelude::*;
use yew_side_effect::title::TitleProvider;
use frontend::routes;
#[global_allocator]
static ALLOC: wee_alloc::WeeAlloc = wee_alloc::WeeAlloc::INIT;
pub struct App;
impl Component for App {
type Message = ();
type Properties = ();
fn create(_ctx: &Context<Self>) -> Self {
Self
}
fn view(&self, _ctx: &Context<Self>) -> Html {
let format_title =
Rc::new(|m: &str| format!("{} | dergrimm.net", m)) as Rc<dyn Fn(&str) -> String>;
html! {
<BrowserRouter>
<TitleProvider default_title="Mentorenwahl | dergrimm.net" {format_title}>
<Switch<routes::Route> render={Switch::render(routes::switch)} />
</TitleProvider>
</BrowserRouter>
}
}
}
fn main() {
wasm_logger::init(wasm_logger::Config::default());
yew::start_app::<App>();
}