您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關微信小程序如何實現頁面傳值,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
微信小程序 頁面傳值詳解
一. 跨頁面傳值.
1 . 用 navigator標簽傳值或 wx.navigator, 比如
這里將good_id=16 參數傳入detail頁面, 然后detail頁面的 onload方法內接受.
如果需要傳多個參數, 用 & 鏈接即可
如果要傳 數組, 字典等復雜類型, 要先用 JSON.stringify() 轉成字符串傳遞.
注 : 如果轉化的字符串中 有"?"這個符號, 則只會傳遞"?"以前的字符串, 這個問題我猜想可能是小程序內部的路由處理 對這個"?"敏感吧
好, 這是第一種 依靠跳轉的url帶參數傳值
2 . 用getCurrentPages(); 獲取棧中全部頁面的, 然后把數據寫入相應頁面
這里可以傳字符串, 也能傳數組等,
這樣就把 address 傳遞并接受了
注 : 這個方法適合 往后面傳值(即已經存在的頁面), 這樣才能在棧中找到并主動寫入數據, 且 一定要在 onshow() 方法中接受, 因為再次返回只執行onshow()方法.
3 . 寫入本地, 跨頁面在取出來 wx.setStorage/wx.getStorage等, 小程序中對寫入本地數據 封裝了很多方法, 各有側重, 這里就不多說了
4 . 把 數據聲明為全局變量
var detail = getApp().detail; 可在任何頁面獲取
二. 頁內傳值
1 . 設置id的方法標識跳轉后傳遞后的參數
在bindtap定義的點擊方法 swiperTap : function(e) ; 中獲取, var id = e.currentTarget.id;
2 . 設置 data-xxx 的方法來標識要傳遞的值
注 : 這里 data-index="{{index}}" 里的 {{index}} 是有效的, 在用wx-for 渲染視圖層時, index 代表點擊的下標. 在bindtap定義的點擊方法 swiperTap : function(e) ; 中獲取, 即 var index = e.currentTarget.dataset.index; 其他的參數取出也如此, var type = e.currentTarget.dataset.type;
3 . form表單和input輸入框
關于“微信小程序如何實現頁面傳值”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。