Vue.js Vue路由器-处理查询参数
我有一个Vue.js Vue路由器-处理查询参数,vue.js,vue-router,Vue.js,Vue Router,我有一个组件,它有一些下拉列表,我将用作过滤器搜索。当我按下submit按钮时,我运行以下代码: search() { let query = { status: this.selectedOrderStatus }; this.$router.push({ path: '/', query: query }) } 这会将我的url更改为:或,这样就可以了 在另一个组件(即/组件)中,我放置了一个手表来处理url更改,如下所示: watch: { '$route':
组件,它有一些下拉列表,我将用作过滤器搜索。当我按下submit
按钮时,我运行以下代码:
search() {
let query = {
status: this.selectedOrderStatus
};
this.$router.push({ path: '/', query: query })
}
这会将我的url更改为:或,这样就可以了
在另一个组件(即/
组件)中,我放置了一个手表来处理url更改,如下所示:
watch: {
'$route': 'loadOrders'
},
因此,当我在下拉列表中选择一个值时,组件将被重新加载
但是,如果我在url上,并且我按下了提交按钮,那么什么也不会发生。我必须选择另一个值(例如2)来进行重新加载
如何处理每次按下提交按钮时的重新加载?因为,我想使用相同的参数再次按“提交”。由于提交时不更改查询参数,Vue不会检测到更改,也不会分别重新加载组件。 对于您的情况,我建议您直接从提交表单的位置致电您的
loadOrders
单击“提交”并尝试不依赖路由时发出事件。
考虑使用vue路由器。