首頁 >微信小程式 >小程式開發 >微信小程式中空白頁重定向的問題解決方法分享

微信小程式中空白頁重定向的問題解決方法分享

黄舟
黄舟原創
2018-05-24 09:26:106885瀏覽

這篇文章主要介紹了微信小程式空白頁重定向解決辦法的相關資料,需要的朋友可以參考下

微信小程式空白頁重定向解決方案

# 在剛開始的時候將小程式的入口檔案直接指向tabbar 的首頁,此時出現問題:二維碼掃描,第一次不關閉首頁,第二次進入時;不會經過onLoad過程解析scene參數;

官方中解釋:tabbar跳轉方式觸發的生命週期是onShow,不經過onLoad,下圖:

##此時,和小夥伴討論重定向問題時,想到用類似的方法可以做到,就立刻實行:

  app.json中加pages/index/index(入口檔案),pages/home/home(tabbar頁面首頁),pages/detail/detail(詳情頁);pages/exclusive/exclusive

在index.js中onLoad處理:

/**
  * 生命周期函数--监听页面加载
  */
 onLoad: function (options) {
  // 入口文件 决定进入哪个页面
  console.log('入口文件,参数scene,值detail%2C1127')
  var scene = options.scene; //扫码进入有此参数
  var scene = decodeURIComponent(options.scene);
  if (scene) {
   //'scene=detail%2C1127' 分隔符, 测试时为 , 号;真机时为%2C 原因是url编码,但是使用decodeURI()解析不出来,所以走了兼容
   
   let info_arr = [];
   info_arr = scene.split(',');
   //console.log(info_arr)
   let _type = info_arr[0];
   let id = info_arr[1];
   if (_type == 'detail') {
    wx.redirectTo({ url: `../detail/detail?id=${id}`, })
   } else if (_type == 'exclusive') {
    wx.redirectTo({ url: `../exclusive/exclusive?id=${id}`, })
   }
  }else{
   wx.switchTab({
    url: '../home/home',
   })
  }
 },

此時,完美解決從掃碼-->home-->detail;再掃碼-->home 不能到-->detail的問題;

此時掃碼-->index(redirectTo )-->detail;再掃碼-->index(redirectTo)-->detail的問題;越過home頁面

#由於home頁面有大量的請求,不適宜用redirectTo;所以此方法算是折中的選擇了

以上是微信小程式中空白頁重定向的問題解決方法分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn