61
src/app.rs
61
src/app.rs
@@ -2,41 +2,54 @@ use leptos::*;
|
||||
use leptos_meta::*;
|
||||
use leptos_router::*;
|
||||
|
||||
use crate::common::layout::DashboardLayout;
|
||||
use crate::routes::dash::home::DashHomePage;
|
||||
use crate::routes::features_view::FeaturesView;
|
||||
use crate::routes::home::HomePage;
|
||||
|
||||
#[component]
|
||||
pub fn App(cx: Scope) -> impl IntoView {
|
||||
// Provides context that manages stylesheets, titles, meta tags, etc.
|
||||
provide_meta_context(cx);
|
||||
|
||||
view! {
|
||||
cx,
|
||||
|
||||
// injects a stylesheet into the document <head>
|
||||
// id=leptos means cargo-leptos will hot-reload this stylesheet
|
||||
view! { cx,
|
||||
<Stylesheet id="leptos" href="/pkg/como_web.css"/>
|
||||
|
||||
// sets the document title
|
||||
<Title text="Welcome to Leptos"/>
|
||||
|
||||
// content for this welcome page
|
||||
<Router>
|
||||
<main>
|
||||
<Routes>
|
||||
<Route path="" view=|cx| view! { cx, <HomePage/> }/>
|
||||
<Route
|
||||
path=""
|
||||
view=|cx| {
|
||||
view! { cx, <HomePage/> }
|
||||
}
|
||||
/>
|
||||
<Route
|
||||
path="/dash"
|
||||
view=|cx| {
|
||||
view! { cx, <DashboardLayout/> }
|
||||
}
|
||||
>
|
||||
<Route
|
||||
path=""
|
||||
view=|cx| {
|
||||
view! { cx, <DashHomePage/> }
|
||||
}
|
||||
/>
|
||||
<Route
|
||||
path="home"
|
||||
view=|cx| {
|
||||
view! { cx, <DashHomePage/> }
|
||||
}
|
||||
/>
|
||||
</Route>
|
||||
<Route
|
||||
path="/features"
|
||||
view=|cx| {
|
||||
view! { cx, <FeaturesView/> }
|
||||
}
|
||||
/>
|
||||
</Routes>
|
||||
</main>
|
||||
</Router>
|
||||
}
|
||||
}
|
||||
|
||||
/// Renders the home page of your application.
|
||||
#[component]
|
||||
fn HomePage(cx: Scope) -> impl IntoView {
|
||||
// Creates a reactive value to update the button
|
||||
let (count, set_count) = create_signal(cx, 0);
|
||||
let on_click = move |_| set_count.update(|count| *count += 1);
|
||||
|
||||
view! { cx,
|
||||
<h1 class="text-xl text-red-50">"Welcome to Leptos!"</h1>
|
||||
<button on:click=on_click>"Click Me: " {count}</button>
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user