小程序tabBar,返回tabBar不刷新頁面,進入tabBar刷新頁面


1、在一個項目中,遇到了這個場景:返回tabBar中的某個頁面是需要保存數據,但是新進這個頁面需要清除數據。

2、場景如下圖:報修進入下一步,返回第一步時不能刷新頁面(即保留頁面數據),從其他tabBar進入報修頁面時就需要清空可能已經填寫的數據。

3、解決辦法,在第二步頁面做了一個本地存儲變量,在第一步的頁面判斷這個變量進而確定是否是第二步頁面返回。

其中,因為第一步有上傳圖片的操作,也會執行"onShow",因此在當前頁面又新增了一個變量去判斷onShow是否是上傳圖片引起的。

第二步頁面代碼:

onShow: function () {
    wx.setStorageSync('repair',1)
  },

 

第一步頁面代碼:注:temp在聲明的時候是0,這個變量是在上傳圖片成功后置為了1

onShow: function () {
    let value = wx.getStorageSync('repair');
    var _tmp = this.data.temp;
    //返回的時候不清空數據
    if (!value){
      //清空數據
      this.setData({
       data:""
      })

    }
  },
onHide: function () {
    if(this.data.temp){
      wx.setStorageSync('repair', 1);
    }else{
      wx.removeStorageSync("repair");
    }  
  },

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM