Browse Source

fix: 🐛

imwald
codytseng 11 months ago
parent
commit
f697421c1b
  1. 9
      src/PageManager.tsx

9
src/PageManager.tsx

@ -109,6 +109,7 @@ export function PageManager({ maxStackSize = 5 }: { maxStackSize?: number }) {
const onPopState = (e: PopStateEvent) => { const onPopState = (e: PopStateEvent) => {
let state = e.state as { index: number; url: string } | null let state = e.state as { index: number; url: string } | null
console.log('popstate', state)
setSecondaryStack((pre) => { setSecondaryStack((pre) => {
const currentItem = pre[pre.length - 1] as TStackItem | undefined const currentItem = pre[pre.length - 1] as TStackItem | undefined
const currentIndex = currentItem?.index const currentIndex = currentItem?.index
@ -202,7 +203,13 @@ export function PageManager({ maxStackSize = 5 }: { maxStackSize?: number }) {
} }
const popSecondaryPage = () => { const popSecondaryPage = () => {
window.history.go(-1) if (secondaryStack.length === 1) {
// back to home page
window.history.replaceState(null, '', '/')
setSecondaryStack([])
} else {
window.history.go(-1)
}
} }
const clearSecondaryPages = () => { const clearSecondaryPages = () => {

Loading…
Cancel
Save