- 分析:一般調(diào)用
navigateBack
返回上一頁(yè)時(shí)有兩種情況- 不需刷新:查看內(nèi)容,狀態(tài)未改變.
- 需刷新:在第二頁(yè)編輯后,上一頁(yè)列表中與之對(duì)應(yīng)的數(shù)據(jù)狀態(tài)一起改變
目前想出的方案是在回退之前修改上頁(yè)判斷條件,回退后重新獲取判斷條件在決定是否刷新。
- 示例:
-
詳情頁(yè)
修改狀態(tài)成功后,準(zhǔn)備回退到上一頁(yè)之前,將上一頁(yè)的是否刷新參數(shù)值改為是的狀態(tài)文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-780277.htmllet pages = getCurrentPages(); let prevPage = pages[pages.length - 2];//上一個(gè)頁(yè)面 //直接調(diào)用上一個(gè)頁(yè)面的setData()方法,把數(shù)據(jù)存到上一個(gè)頁(yè)面中去 prevPage.setData({ isRefresh: 1 }) // 再根據(jù)需求,確定返回上一頁(yè)面 wx.navigateBack({ delta: 1 })
-
列表頁(yè)
需要在onshow鉤子中獲取判斷條件文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-780277.htmlexport default{ data(){ return{ isRefresh:false } }, onShow(){ // 如果是提交狀態(tài)返回isRefresh=1,才刷新頁(yè)面,從詳情過(guò)來(lái)無(wú)需刷新 let pages = getCurrentPages(); let currPage = pages[pages.length - 1]; if(currPage.__data__.isRefresh){ // 重新獲取數(shù)據(jù) this.getData(true)//獲取列表數(shù)據(jù) // 每一次需要清除,否則會(huì)參數(shù)會(huì)緩存 currPage.__data__.isRefresh=false } } }
-
到了這里,關(guān)于uniapp使用navigateBack方法返回上級(jí)頁(yè)面并刷新的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!