导航到同一路线后重新安装页面 - sveltekit
Remount page after navigating to same route - sveltekit
当我使用 svelte-kits 路由系统时,我可以使用 [page].svelte
创建动态页面,例如,当我调用 localhost:3000/foo
时将呈现该页面。但是,当我从 localhost:3000/foo
导航到 localhost:3000/bar
时,不会调用 onMount()
函数(我猜是出于性能原因)。
我可以通过将所有相关内容包装在 {#key ... }
表达式中来解决这个问题,但是有什么方法可以“重新装载”页面吗?
谢谢你帮助我:)
未调用 onMount
,但正在更新道具 。
这允许新数据流向现有的 dom 元素,并且浏览器不必重新生成全新的 page/component.
如果有基于这些 props 计算的状态,请确保它们在反应式语句中,而不仅仅是在 onMount 中。
在某些情况下(使用 third-party 代码)重新安装组件更方便,在这些情况下,您将使用您提到的 {#key}
块。
当我使用 svelte-kits 路由系统时,我可以使用 [page].svelte
创建动态页面,例如,当我调用 localhost:3000/foo
时将呈现该页面。但是,当我从 localhost:3000/foo
导航到 localhost:3000/bar
时,不会调用 onMount()
函数(我猜是出于性能原因)。
我可以通过将所有相关内容包装在 {#key ... }
表达式中来解决这个问题,但是有什么方法可以“重新装载”页面吗?
谢谢你帮助我:)
未调用 onMount
,但正在更新道具 。
这允许新数据流向现有的 dom 元素,并且浏览器不必重新生成全新的 page/component.
如果有基于这些 props 计算的状态,请确保它们在反应式语句中,而不仅仅是在 onMount 中。
在某些情况下(使用 third-party 代码)重新安装组件更方便,在这些情况下,您将使用您提到的 {#key}
块。