【问题标题】:Vue Router - beforeDestroy is called for parent component when children route changesVue Router - 当子路由更改时为父组件调用 beforeDestroy
【发布时间】:2019-03-01 16:12:38
【问题描述】:

我的路线是这样定义的

{
path: '/menu',
component: () => import('./Menu.vue'),
children: [
  {
    path: 'admin',
    component: () => import('./menus-admin/MenusAdmin.vue'),
    name: 'menusAdmin'
  },
  {
    path: 'import',
    component: () => import('./menus-admin/menus-import/MenusImport.vue'),
    name: 'menusImport'
  }
 ]
}

当我使用router-link 组件在adminimport 路由之间导航时,父Menu.vue 组件被销毁并再次创建。我希望Menu.vue 组件不会被破坏,除非我导航到完全不同的路线。这是一个问题,因为我已经实现了一些生命周期钩子,我不想在子路由更改时一遍又一遍地调用它们。 难道我做错了什么?这是一个错误还是一个功能?

【问题讨论】:

标签: vue.js webpack vue-router


【解决方案1】:

我发现了我的问题。我的<router-view> 上面有:key="$route.fullPath"。这迫使它在每次路线更改时重新渲染所有内容。

删除它并按预期工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-21
    • 2018-04-18
    • 2019-06-23
    • 2018-02-17
    • 2021-02-06
    • 2019-06-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多