分享最實(shí)用的技術(shù),創(chuàng)造更大的價(jià)值

如何使用uni.navigateBack傳參修改上一個(gè)頁(yè)面值

如何使用uni.navigateBack傳參修改上一個(gè)頁(yè)面值


APP開(kāi)發(fā)中,采用uniapp開(kāi)發(fā)效率非常高,但在實(shí)際APP開(kāi)發(fā)應(yīng)用中,表單編輯狀態(tài)選擇是很常見(jiàn)的效果,包括地址選擇等。那么,在編輯過(guò)程中,如何到一個(gè)新頁(yè)面選擇數(shù)據(jù)后返回原頁(yè)面?并且原頁(yè)面數(shù)據(jù)不丟失?


使用uniapp開(kāi)發(fā)時(shí),可以使用  uni.navigateTo 、uni.navigateBack 進(jìn)行跳轉(zhuǎn)和返回,參數(shù)傳遞則使用:page  setData 方式,具體參考如下。


選擇頁(yè)面(即:要返回時(shí)的調(diào)用)

var pages = getCurrentPages(); 
var currPage = pages[pages.length - 1]; //當(dāng)前頁(yè)面 
var prevPage = pages[pages.length - 2]; //上一個(gè)頁(yè)面 
//直接調(diào)用上一個(gè)頁(yè)面的setData()方法,把數(shù)據(jù)存到上一個(gè)頁(yè)面中去 
prevPage.setData({ 
        select_data:"test" 
}) 
 uni.navigateBack(); //返回上一個(gè)頁(yè)面


原始頁(yè)面接收,在 onShow 中接收數(shù)據(jù)

onShow:function(e){ 
       let pages = getCurrentPages(); 
       let currPage = pages[pages.length-1]; 
       if (currPage.data.select_data==undefined){ 
            console.log(currPage.data.select_data);//接收的數(shù)據(jù) 
       }
 
 }


以上代碼僅為功能說(shuō)明,具體應(yīng)用需根據(jù)項(xiàng)目情況加驗(yàn)證條件。


成都創(chuàng)軟科技提供各類(lèi)企業(yè)管理app開(kāi)發(fā)服務(wù),如有問(wèn)題可與我們聯(lián)系。


聯(lián)系
QQ
電話(huà)
咨詢(xún)電話(huà):189-8199-7898
TOP