added a logout button
This commit is contained in:
parent
8556aa21ff
commit
79903c779a
@ -2,8 +2,6 @@ use leptos::leptos_dom::*;
|
||||
use leptos::*;
|
||||
use leptos_icons::*;
|
||||
|
||||
use crate::auth::check_auth;
|
||||
|
||||
#[component]
|
||||
pub fn Personal(logged_in: ReadSignal<bool>) -> impl IntoView {
|
||||
view! {
|
||||
@ -32,7 +30,7 @@ pub fn Profile(logged_in: ReadSignal<bool>) -> impl IntoView {
|
||||
when=move || {logged_in() == true}
|
||||
fallback=move || view!{<DropDownNotLoggedIn />}
|
||||
>
|
||||
<h1>Hello</h1>
|
||||
<DropDownLoggedIn/>
|
||||
</Show>
|
||||
|
||||
</div>
|
||||
@ -49,3 +47,26 @@ pub fn DropDownNotLoggedIn() -> impl IntoView {
|
||||
</div>
|
||||
}
|
||||
}
|
||||
#[component]
|
||||
pub fn DropDownLoggedIn() -> impl IntoView {
|
||||
use crate::auth::logout;
|
||||
|
||||
let logout = move |_ev: leptos::ev::MouseEvent| {
|
||||
spawn_local(async move {
|
||||
let _logout_result = logout().await;
|
||||
if let Err(err) = _logout_result {
|
||||
log!("Error logging out: {:?}", err);
|
||||
} else {
|
||||
log!("Logged out Successfully!");
|
||||
leptos_router::use_navigate()("/login", Default::default());
|
||||
}
|
||||
|
||||
});
|
||||
};
|
||||
view! {
|
||||
<div class="dropdown-logged-in">
|
||||
<h1>Logged in!</h1>
|
||||
<button on:click=logout class="auth-button">Log Out</button>
|
||||
</div>
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user