Move the history provider into the context (#3048)
* move history providers into a separate crate * start moving route providers into the renderers * clean up intoroutable * remove into routable * fix router tests * Provide history providers in each renderer * implement nested routers * move the lens out of the history crate * re-export dioxus history trait in the prelude * also re-export the history function * fix history doctests * some light cleanups --------- Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
This commit is contained in:
1 parent
e5a1a62644
commit
281087469a
48 files changed
+875
-1419
No files matched your search
@@ -1,6 +1,10 @@
|
||||
#![allow(unused)]
|
||||
|
||||
use std::rc::Rc;
|
||||
|
||||
use dioxus::prelude::*;
|
||||
use dioxus_history::{History, MemoryHistory};
|
||||
use dioxus_router::components::HistoryProvider;
|
||||
use dioxus_router::prelude::*;
|
||||
|
||||
fn prepare(path: impl Into<String>) -> VirtualDom {
|
||||
@@ -38,10 +42,9 @@ fn prepare(path: impl Into<String>) -> VirtualDom {
|
||||
fn App(path: Route) -> Element {
|
||||
rsx! {
|
||||
h1 { "App" }
|
||||
Router::<Route> {
|
||||
config: move |_| {
|
||||
RouterConfig::default().history(MemoryHistory::with_initial_path(path.clone()))
|
||||
}
|
||||
HistoryProvider {
|
||||
history: move |_| Rc::new(MemoryHistory::with_initial_path(path.clone())) as Rc<dyn History>,
|
||||
Router::<Route> {}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user