如何在路线更改时强制Vue销毁并重新创建组件?

问题描述

我在Vue路由器中的路线:

{ path: 'articles/create',component: () => import('Detail.vue') },{ path: 'articles/:id/edit',

如您所见,我在两条路径上都渲染了相同的Vue组件Detail.vue

我如何“强制” Vue销毁并重新创建Detail.vue组件 URL发生更改时,例如从/articles/5/edit更改为/articles/create

解决方法

<router-view :key="$route.fullPath" />

请注意,这只会强制路由器破坏/创建组件,并且对路由器挂钩没有影响-例如,即使目标组件被破坏并创建了新组件,也不会调用beforeEnter挂钩...