微信小程序页面间传值被截断

微信小程序页面间传值被截断

页面间传递长字符串(URL)和数组对象时
JSON.stringify()和JSON.parse()踩坑!!!

SyntaxError: Unexpected token % in JSON at position 0
SyntaxError: Unexpected end of JSON input

解决办法

//传输数据前 用encodeURIComponent()函数进行编码
//data为数组对象实例数据
const data = {
	nickname:'demo',
	avatar:'https://***.png'
}

const user = encodeURIComponent(JSON.stringify(data))
wx.navigateTo({
	url:`/pages/other/other?user=${user}`
})

//	传输数据后 
//	1.用decodeURIComponent()函数解码
//  2.最后再通过JSON.parse()将其还原为数组对象
onLoad(options) {
	const user = JSON.parse(decodeURIComponent(options.user))
	const { avatar, nickname } = user
	this.setData({
		avatar,
		nickname
	})
},
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值