mirror of
https://github.com/leptos-rs/leptos.git
synced 2025-12-27 09:54:41 -05:00
fix: correctly update path stack when navigating backwards (closes #4324)
This commit is contained in:
@@ -185,11 +185,15 @@ impl LocationProvider for BrowserUrl {
|
|||||||
let is_back = self.is_back.clone();
|
let is_back = self.is_back.clone();
|
||||||
move || match Self::current() {
|
move || match Self::current() {
|
||||||
Ok(new_url) => {
|
Ok(new_url) => {
|
||||||
let stack = path_stack.read_value();
|
let mut stack = path_stack.write_value();
|
||||||
let is_navigating_back = stack.len() == 1
|
let is_navigating_back = stack.len() == 1
|
||||||
|| (stack.len() >= 2
|
|| (stack.len() >= 2
|
||||||
&& stack.get(stack.len() - 2) == Some(&new_url));
|
&& stack.get(stack.len() - 2) == Some(&new_url));
|
||||||
|
|
||||||
|
if is_navigating_back {
|
||||||
|
stack.pop();
|
||||||
|
}
|
||||||
|
|
||||||
is_back.set(is_navigating_back);
|
is_back.set(is_navigating_back);
|
||||||
|
|
||||||
url.set(new_url);
|
url.set(new_url);
|
||||||
|
|||||||
Reference in New Issue
Block a user