前言
你可以理解為:攜帶一個 復雜物件資料 引數,實作跳轉頁接收,
在微信小程式,使用 wx.navigateTo({}) API 攜帶引數跳轉頁面很常見,但是今天有一個需求,需要攜帶一個復雜的資料,它是一個陣列,里面嵌套了 N 個物件,物件里還有陣列,
解決方案
使用 JSON 物件的兩個方法:
- JSON.strtingify:將
object轉化為字串 - JSON.parse:將字串決議為
object,
/*
* [發送引數]
* 將物件決議為字串
*/
wx.navigateTo({
url: '/pages/index?data=' + JSON.stringify(object),
})
/*
* [接收引數]
* 將字串決議為物件
*/
this.setData({
data: JSON.parse(options.data)
})
注意事項
您需要格外注意 第一條 ,如果有影像鏈接,那么必定觸發了,請按照教程解決,
- 如果轉化的字串中 有
"?","&"或"="等這樣的符號,則只會傳遞符號以前的字串,符號后面資料會被丟失,這個問題我猜想可能是小程式內部的路由處理 對這些符號敏感吧,所以有時候這里可以先用encodeURIComponent()進行轉碼,在目標頁面再用decodeURIComponent()解碼,這樣就可以避免資料丟失了,如果你看不懂,請訪問 詳細代碼教程! - 不要將引數
object先使用變數存起來然后進行傳遞,這樣寫接收的時候可能無法決議成功,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/145460.html
標籤:其他
上一篇:一般公司網站的制作流程
下一篇:c語言字串的初始化
