gpt4 book ai didi

javascript - 使用 Vue.js 和 vue-router 构建 SPA 时如何销毁组件?

转载 作者:搜寻专家 更新时间:2023-10-30 22:30:03 25 4
gpt4 key购买 nike

假设我有一个如下所示的路由映射:

router.map({
'/a_example': {
component: A
},

'/b_example': {
component: B
},

组件 A 每 1 秒有一个 Ajax 请求。我在浏览器中加载 /a_example 并单击 component A 上的链接转到 /b_示例。现在浏览器正在按预期显示组件 B。然而,Ajax 请求并没有停止,仍然每 1 秒发送一次请求。

我的猜测是 vue-router 仍然将组件 A 隐藏在引擎盖下,这样它就不会遇到性能问题。

无论如何,我在 http://vuejs.github.io/vue-router/en/view.html 中找到了所有信息这是 keep-alive 东西吗?但默认情况下它是停用的,我确定我没有使用它。

有什么我可以使用的选项吗?

最佳答案

Vue-router 提供了一些可选的 transition hooks .您可以在 deactivate Hook 内停止发送 ajax 请求。

Vue.component('component-A', {
route: {
deactivate: function () {
//stop sending requests
}
}
})

关于javascript - 使用 Vue.js 和 vue-router 构建 SPA 时如何销毁组件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35104770/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com