用getCurrentPages()引入上页数组变量,用this.setData({XX})更新本页数组变量,发现上页和本页变量一起被修改,用myPage=pages【pages.length - 1】,myPage.setData({}),也一样。我想通过“确定”键来修改上页数据,“返回”则不修改。
A页面有settitle数组
B页面:
onShow: function () {
var pages = getCurrentPages();
var prevPage = pages[pages.length - 2] //上一个页面
this.setData({
settitle:prevPage.data.settitle,
})
},
onChange(event) {
let key = event.currentTarget.dataset.key,
value = event.detail,
settitle = this.data.settitle
settitle[key] = value
this.setData({settitle})
},
onChange执行后,上一页变量同时改变,这个是我代码有问题,还是getCurrentPages本来就是这样设定的?
谢谢各位大神解答。
你代码的问题,原因琢磨下下面这段代码的输出结果就知道了