小程序或者uniapp回传数据到上一级页面
当需要页面回传数据的时候,使用 navigateBack是没办法进行传值的,所以我们这里有两种解决方案
1.使用 getApp() 全局,将需要使用的数据写到全局中
// 在app.js中占位
2.直接将上级页面的元素进行修改
//返回上一级
var changecity = e.currentTarget.dataset.city
var pages = getCurrentPages();
var currPage = pages[pages.length - 1]; //当前页面
var prevPage = pages[pages.length - 2]; //上一个页面
prevPage.setData({ // 直接修改上级页面的数据
info: this.data.subInfoList[e.currentTarget.dataset.index],
// 修改服务费,直接进行计算并修改(因为传递后,无法在上级页面的onLoad和onShow生命周期中拿到数据,所以在这计算后直接赋值)
serviceFee: Number(prevPage.data.serviceFee) + Number(carFare)
})