wx.navigateTo開啟新頁面,並傳值,選擇後返回值到首頁
阿新 • • 發佈:2020-11-04
1、開啟一個頁面
wx.navigateTo,這個方法不會關閉現有的頁面
wx.navigateTo({ url: '../company/companymanager?st_id=2&ct_id=1', events: { // 為指定事件新增一個監聽器,獲取被開啟頁面傳送到當前頁面的資料 acceptDataFromOpenedPage: function(data) { console.log(data) }, someEvent: function(data) { console.log(data) }, helloEvent:function(data) { console.log(data) }, }, success: function(res) {// 通過eventChannel向被開啟頁面傳送資料 res.eventChannel.emit('acceptDataFromOpenerPage', { data: 'test' }) } }) },
2、開啟頁面裡接收引數,並且選擇後,返回值到前一個頁面
onLoad: function (options) { wx.showToast({ title: options.ct_id+","+options.st_id, }) const eventChannel = this.getOpenerEventChannel() eventChannel.emit('acceptDataFromOpenedPage', {data: 'test1'}); eventChannel.emit('someEvent', {data: 'test2'}); // 監聽acceptDataFromOpenerPage事件,獲取上一頁面通過eventChannel傳送到當前頁面的資料 eventChannel.on('acceptDataFromOpenerPage', function(data) { console.log(data) }) },
cellClick:function(){const eventChannel = this.getOpenerEventChannel() eventChannel.emit('acceptDataFromOpenedPage', {companyid:1,companyname: 'test1'}); eventChannel.emit('someEvent', {companyid:2, companyname: 'test2'}); eventChannel.emit('helloEvent',{test:2, test2: 'hello'}); },
3、說明
acceptDataFromOpenedPage、
someEvent、
helloEvent、
這3個都為自定義名稱,實時的進行頁面之前的資料的通訊。
cellClick方法,可以在選擇一行資料,直接呼叫,也可以選擇資料後,點【確定】按鈕呼叫。