声明式路由器 link 未使用 VueRouter 清除 Vue 组件中的模型
Declarative router link not clearing model in Vue component using VueRouter
开发任务调度程序路径“/task?id=10”使用带有任务信息的异步响应填充组件模型,工作正常。
在导航栏中我有以下路由器link:
<router-link to="/task">New Task</router-link>
所以我使用相同的路径和组件来创建新任务和编辑现有任务,所有这些都基于是否存在 "id" 参数。
问题是,如果我在路径 '/task?id=10' 中并填充了一些模型字段,然后我单击指向 '/task' 的路由器-link(无参数)它会更改浏览器 URL 但不会清除组件模型,因此输入数据会保留。
如何 restart/reload 通过声明性路由器登陆组件时 - link?
您可以制作 parent-child 组件。父组件在 /task 路由上,子组件在 '/task/10 上。更多,Nested Routes。此外,您不需要附加“?id=”,只需附加 /task/10。
const router = new VueRouter({
routes: [
{ path: '/task', component: Task,
children: [
{ path: ':id', component: TaskId }
]
}]
});
开发任务调度程序路径“/task?id=10”使用带有任务信息的异步响应填充组件模型,工作正常。
在导航栏中我有以下路由器link:
<router-link to="/task">New Task</router-link>
所以我使用相同的路径和组件来创建新任务和编辑现有任务,所有这些都基于是否存在 "id" 参数。
问题是,如果我在路径 '/task?id=10' 中并填充了一些模型字段,然后我单击指向 '/task' 的路由器-link(无参数)它会更改浏览器 URL 但不会清除组件模型,因此输入数据会保留。
如何 restart/reload 通过声明性路由器登陆组件时 - link?
您可以制作 parent-child 组件。父组件在 /task 路由上,子组件在 '/task/10 上。更多,Nested Routes。此外,您不需要附加“?id=”,只需附加 /task/10。
const router = new VueRouter({
routes: [
{ path: '/task', component: Task,
children: [
{ path: ':id', component: TaskId }
]
}]
});