vue-router query 传对象需要JSON.stringify()转化
先说一下场景-微信公众号网页开发中,一个文章列表点击跳转详情页.代码如下
|
1
2
3
|
this.$router.push({path: '/wx/detail', query: {res: data}})// data中的数据结构如下一个对象里边有数组有对象等等。。。{title: |
|
1
2
3
4
5
6
7
8
|
// 列表页点击跳转let data = JSON.stringify(result) // result传递的query参数。我们转为stringthis.$router.push({path: '/wx/detail', query: {res: data}})// 详情页获取 let data = JSON.parse(this.$route.query.res) this.result = Object.assign({}, data) |
|
1
|
'xxx', imgList: ['1','2'] } |
首先第一点击跳转详情页显示正常。如下

那么接下来我们刷新下页面。你会发现你得对象完全变了。成了一个"[object Object]"这是怎么回事呐?怎么解决呐?

不知道为什么vue-router会这样做?接下来会去研究下源码,或者浏览器的处理机制。先说下解决方案吧。

浙公网安备 33010602011771号