Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
238 views
in Technique[技术] by (71.8m points)

最新版vue-router的bug

query: {checkboxGroupValue: [11, 22]}, 当$router.push()后,url变成如下,
bu
clipboard.png

query: {checkboxGroupValue: [22]}时候如下
clipboard.png

这时候我们刷新一下,
问题来了, 这时$route.query.checkboxGroupValue不是[22], 而是22, 这是为什么呢? 数据类型变了

0.7版本的时候地址是 checkboxGroupValue[]=11&checkboxGroupValue[]=22, 现在怎么才能变成那样


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

没玩过这么高级的

不过可以把 checkboxGroupValue 改成 JSON.stringify([22])

获取 query 之后再 JSON.parse

还可以考虑添加 watcher:

'$route.query.x': {
  handler(val) {
    this.$route.query.x = Array.isArray(val) ? val : [val]
  },
  immediate: true
}

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

56.8k users

...