Vue2. 使用const routes = [ { path: '/user/:id', component: User, key: route => route.params.id } ] 报错没有route
时间: 2024-03-02 11:48:08 浏览: 123
vue-router 按需加载 component: () = import() 报错的解决
抱歉,我的回答有误。在 Vue Router 中,路由的`key`属性是不支持的。`key`属性是在 Vue.js 中用于优化渲染的,而不是用于路由的。
如果您想要在路由切换时强制组件重新渲染,可以通过监听 `$route` 对象的变化来实现。可以在组件内部使用 `$route` 对象的`watch`选项,当 `$route` 对象发生变化时,触发重新渲染。
例如,在`User`组件中,可以添加如下的代码:
```javascript
watch: {
'$route': {
handler: function (to, from) {
// 在这里进行重新渲染的操作
},
immediate: true // 立即触发一次
}
}
```
在上面的代码中,`handler`函数会在`$route`对象发生变化时被触发,可以在这里进行重新渲染的操作。`immediate`选项可以让这个函数在组件创建时立即触发一次,以保证组件在初次渲染时就能正确显示。
阅读全文