URLのクエリを更新したい。ただし、$ router.PushはURLを更新しません。 disp
は、呼び出しごとに異なる値です。どうして?
handle: function(disp) {
let route = Object.assign({}, this.$route);
route.query.disp = disp;
this.$router.Push(route);
},
バージョン。
"vue": "^2.5.17",
"vue-router": "^3.0.1",
ルート(console.log)
ルートオブジェクトにプッシュしようとするべきではありません。代わりに、次のいずれかを使用する必要があります。
// literal string path
router.Push('home')
// object
router.Push({ path: 'home' })
// named route
router.Push({ name: 'user', params: { userId: 123 }})
// with query, resulting in /register?plan=private
router.Push({ path: 'register', query: { plan: 'private' }})
あなたの場合:
this.$router.Push({path: this.$route.path, query: {disp: disp}})
this.$route
オブジェクトのコピーを停止しました。それはうまくいきます。