繁体   English   中英

vue-router: this.$router.push 在更新查询时不起作用

[英]vue-router: this.$router.push not working when updating query

我想更新对 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",

路线(控制台.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对象的副本。 这很好用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM