diff --git a/packages/router/Cargo.toml b/packages/router/Cargo.toml index e2ee8dd06..219684379 100644 --- a/packages/router/Cargo.toml +++ b/packages/router/Cargo.toml @@ -11,6 +11,7 @@ keywords = ["dom", "ui", "gui", "react", "wasm"] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] +anyhow = "1.0.66" async-rwlock = "1.3.0" dioxus = { path="../dioxus" } dioxus-router-core = { path = "../router-core"} diff --git a/packages/router/src/components/link.rs b/packages/router/src/components/link.rs index 2a78ec5da..f9940c86b 100644 --- a/packages/router/src/components/link.rs +++ b/packages/router/src/components/link.rs @@ -54,11 +54,12 @@ pub fn Link<'a>(cx: Scope<'a, LinkProps<'a>>) -> Element { let router = match use_router_internal(&cx) { Some(r) => r, None => { - error!("`Link` must have access to a parent router, will be inactive"); + let msg = "`Link` must have access to a parent router"; + error!("{msg}, will be inactive"); #[cfg(debug_assertions)] - panic!("`Link` must have access to a parent router"); + panic!("{}", msg); #[cfg(not(debug_assertions))] - return None; + anyhow::bail!("{msg}"); } }; let state = loop { diff --git a/packages/router/src/components/outlet.rs b/packages/router/src/components/outlet.rs index 09728b49d..59e282256 100644 --- a/packages/router/src/components/outlet.rs +++ b/packages/router/src/components/outlet.rs @@ -18,11 +18,12 @@ pub fn Outlet(cx: Scope) -> Element { let router = match use_router_internal(&cx) { Some(r) => r, None => { - error!("`Outlet` must have access to a parent router, will be inactive"); + let msg = "`Outlet` must have access to a parent router"; + error!("{msg}, will be inactive"); #[cfg(debug_assertions)] - panic!("`Outlet` must have access to a parent router"); + panic!("{}", msg); #[cfg(not(debug_assertions))] - return None; + anyhow::bail!("{msg}"); } }; let state = loop {