轉自: 霍莉雪特??https://www.cnblogs.com/guxin/p/7658542.html
問題:使用wx.navigator打開新頁面時可以帶參,但如果要wx.navegateBack回到上一級頁面,該如何傳參。
方法一:
將數(shù)據(jù)保存到app.js文件中。因為該文件中的屬性是全局的,可以在任意Page頁面中獲取到app.js中的數(shù)據(jù)。
但是如果所有全局變量都放到app.js中,會導致該文件很臃腫。
方法二:
使用getCurrentPages(),找到上一級頁面的Page實例,再通過setData來直接給上一級頁面的data設置數(shù)據(jù),實現(xiàn)傳參!

Page({
? data: {
? },
? // 其他省略。。。
? // 輸入框失去焦點的回調,添加條目
? addItem: function (event){
? ? console.log("添加條目!");
? ? wx.navigateBack();
? ? // 往上一級頁面?zhèn)鲄?/p>
? ? var pages = getCurrentPages();
? ? var currPage = pages[pages.length - 1]; // 當前頁面
? ? var prevPage = pages[pages.length - 2]; // 上一級頁面
? ? // 直接調用上一級頁面Page對象,存儲數(shù)據(jù)到上一級頁面中
? ? var str = event.detail.value;
? ? prevPage.setData({
? ? ? ? 'addItemContent': str,
? ? });
? },
})