//A页面(注意这里需要使用箭头函数(访问this))
toFillOutInvoiceInfo() {
wx.navigateTo({
url: `/pages/invoice/invoice-info-form/invoice-info-form`,
events:{ //接收子页面通信的相应事件
updateInvoice:(result)=>{
this.setData({invoice:result})
}
},
success:(res)=>{
const params = {
amount: this.data.amount,
invoice:this.data.invoice.invoice_title ? JSON.stringify(this.data.invoice) : ""
}
res.eventChannel.emit('sendQueryParams',params)
}
});
},
//B页面
onLoad(){
this.getOpenerEventChannel().once('sendQueryParams',(params)=>{
const {amount,invoice} = parmas;
this.setData({amount,invoice})
})
}
submit(){
this.getOpenerEventChannel().emit('updateInvoice',this.data.invoice);
wx.navigateBack();
}
EventChannel的实现
最新推荐文章于 2024-08-28 12:14:22 发布
文章展示了在微信小程序中,A页面如何使用wx.navigateTo跳转到B页面并传递数据。通过事件通道(events)进行通信,A页面向B页面发送参数,并在B页面接收到参数后设置数据。当B页面提交信息时,会更新发票信息并使用wx.navigateBack返回到A页面。
摘要由CSDN通过智能技术生成