微信小程序页面间的对象传递
生活随笔
收集整理的這篇文章主要介紹了
微信小程序页面间的对象传递
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
例子:
頁面架構(gòu):
page
? ? ? ?A→a.js
? ? ? ?B→b.js
a.js→b.js, 此時a.js想傳遞studentBean這個對象到b.js接收, 常規(guī)的傳遞如下:
var studentJson = JSON.stringify( this.data. studentBean) wx.navigateTo({ url: '../B/b?student=' + studentJson, })說明:?
this.data.studentBean是聲明在page({data:{}})里的對象, 在傳遞對象前,需要將對象轉(zhuǎn)為json字符串傳遞, 如需傳遞多參數(shù),
則用"&"連接,?其中不能有空格, 例:
url: '../B/b?student=' + studentJson + '&teacher=' + teacherJson,此時在b.js中的onload()方法中接收:
onLoad: function(options) { var studentBean = JSON.parse(options.student)var teacherBean = JSON.parse(options.teacher) }以上為常規(guī)的對象傳遞.
注意: 如果對象中含有特殊符號, 使用上面方法傳遞則會造成數(shù)據(jù)丟失或被截取了部分數(shù)據(jù), 那么接下來則需要在傳遞之前先編碼再傳遞, 如下:?
?
var studentJson = JSON.stringify( this .data. studentBean) wx.navigateTo({ url: '../B/b?student=' + escape( studentJson) , })此時b.js接收則需要先解碼再解析:
onLoad: function(options) { var studentBean = JSON.parse(unescape(options.student))}注意: 編碼使用:?escape, 解碼使用:?unescape
轉(zhuǎn)自:https://blog.csdn.net/wahyip/article/details/80982351
總結(jié)
以上是生活随笔為你收集整理的微信小程序页面间的对象传递的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蚂蚁集团更新招股书 A股初始战略配售
- 下一篇: 微信小程序之redirectTo、swi