Login works now

This commit is contained in:
Marko Korhonen 2020-04-28 19:01:29 +03:00
parent 75b3aa7249
commit 43a9beaef8
No known key found for this signature in database
GPG key ID: 911B85FBC6003FE5
4 changed files with 122 additions and 49 deletions

View file

@ -1,6 +1,10 @@
#![recursion_limit = "256"]
extern crate log;
extern crate web_logger;
mod component;
pub mod utils;
use component::login::LoginComponent;
use yew::prelude::*;
@ -13,9 +17,9 @@ struct App {}
enum AppRoute {
#[to = "/login"]
Login,
PageNotFound(Permissive<String>),
#[to = "/"]
Root,
PageNotFound(Permissive<String>),
}
impl Component for App {
@ -33,32 +37,27 @@ impl Component for App {
fn view(&self) -> VNode {
html! {
<div>
<nav class="menu",>
<RouterButton<AppRoute> route=AppRoute::Root>{"Go to Root"}</RouterButton<AppRoute>>
<RouterButton<AppRoute> route=AppRoute::Login>{"Go to Login"}</RouterButton<AppRoute>>
</nav>
<div>
<Router<AppRoute>
render = Router::render(|switch: AppRoute| {
match switch {
AppRoute::Login => html!{<LoginComponent />},
AppRoute::PageNotFound(Permissive(None)) => html!{"Page not found"},
AppRoute::PageNotFound(Permissive(Some(missed_route))) => html!{format!("Page '{}' not found", missed_route)},
AppRoute::Root => {
html!{"hello there!"}
},
}
})
redirect = Router::redirect(|route: Route| {
AppRoute::PageNotFound(Permissive(Some(route.route)))
})
/>
</div>
<Router<AppRoute>
render = Router::render(|switch: AppRoute| {
match switch {
AppRoute::Login => html!{<LoginComponent />},
AppRoute::PageNotFound(Permissive(None)) => html!{"Page not found"},
AppRoute::PageNotFound(Permissive(Some(missed_route))) => html!{format!("Page '{}' not found", missed_route)},
AppRoute::Root => {
html!{"hello there!"}
},
}
})
redirect = Router::redirect(|route: Route| {
AppRoute::PageNotFound(Permissive(Some(route.route)))
})
/>
</div>
}
}
}
fn main() {
web_logger::init();
yew::start_app::<App>();
}