解決微信授權成功后點擊按返回鍵出現空白頁和報錯的問題

 更新時間:2020-06-14 00:01:10   作者:佚名   我要評論(0)

微信授權 的操作可以閱讀我的另一篇文章 https://www.jb51.net/article/188237.htm
微信授權我是 在index.vue做的授權,是一個空白頁,因為授權需要回調所以這個頁面

微信授權 的操作可以閱讀我的另一篇文章 https://www.jb51.net/article/188237.htm

微信授權我是 在index.vue做的授權,是一個空白頁,因為授權需要回調所以這個頁面會刷新兩次,當我們授權成功進入主頁面后,點擊返回鍵或者點擊手機的物理返回鍵,因為瀏覽器history機制,按物理返回或者返回肯定是會進入這個授權頁面的,而此時code已經使用過,會報code錯誤,而且這個是空白頁,多次點擊也并不能回到微信的消息列表頁,體驗極差。。。

我的做法是引入微信的js sdk,使用vue-router 路由導航beforeEach 中的 to(即將到達的頁面)和from(當前頁面)來做判斷,假如to是授權頁,from是授權成功后首次進入的頁面,在from頁面點擊返回 ,路由監聽到這一滿足條件就 調用 微信 wx.closeWindow() 方法即可關閉當前頁面回到消息列表頁,不是使用vue來開發的項目原理大概也是類似的。

具體代碼如下:

①引入微信sdk,npm install 相對應的包即可。

②在路由配置頁面配置路由守衛。

router.beforeEach((to, from, next) => {
  // 特殊處理授權成功后的user個人中心頁面點擊返回退出到微信消息列表頁
  let mark = to.fullPath.indexOf('code')
  if (mark !== -1 && from.fullPath === '/user') {
    wx.closeWindow()
  }
})

因為微信授權頁授權成功必會在url中帶 code,所有我是通過判斷路徑中是否有 code認定是授權頁(可能這種方式)不妥,但能確認to和from兩個條件滿足即可。

到此這篇關于解決微信授權成功后點擊按返回鍵出現空白頁和報錯的問題的文章就介紹到這了,更多相關微信返回鍵出現空白頁和報錯內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:

  • 微信小程序返回多級頁面的實現方法
  • 詳解微信小程序膠囊按鈕返回|首頁自定義導航欄功能
  • 微信小程序判斷頁面是否從其他頁面返回的實例代碼
  • 解決微信返回上一頁,頁面中的AJAX的請求,對Get請求無效的問題
  • 微信小程序返回上一頁傳參并刷新過程解析
  • 微信小程序 子級頁面返回父級并把子級參數帶回父級實現方法
  • 6行代碼實現微信小程序頁面返回頂部效果

相關文章

最新評論

买宝宝用品赚钱吗 浙江6 1体彩开奖结果 江西快3开奖查询 白小姐 吉林11选5彩经网 格力电器股票分析报告 1分快3是不是国家发行 浙江体彩飞鱼和值 福建11选5走势一 十一选五最简单技巧 北京快三遗漏数据 淘股吧论坛首页 湖南快乐十分遗漏 真准网 贵州快3开结果 2020香港现场开吗 山西11选五走势图 河北十一选五开奖结果图