小程式手動實現路由攔截
小程式中並沒有像 vue-router 一樣的路由攔截功能,所以需要自己手動實現,下面就把具體的實現方法分享出來供大家參考。
具體實現思路與vue相同,定義一個全域性的 token 變數,進入某一個頁面的時候判斷是否存在這個 token 是否存在,存在則正常跳轉,不存在則跳轉到登入頁面。
建立一個工具資料夾,建立一個 routers.js ,封裝路由攔截的具體程式碼如下:
// routers.js
export function routerFillter(pageObj) {
let _onShow = pageObj.onShow;
pageObj.{
const token = getApp().globalData.token;
if (token && token.length > 0) {
// 有登入資訊 - 頁面開啟
_onShow.call(this)
} else {
// 無登入資訊 - 登入
wx.switchTab({
url: '/pages/user/user'
})
}
}
return Page(pageObj);
}
在需要攔截的頁面中匯入攔截方法,使用發放如下:
// index.js
import { routerFillter } from "../../utils/routers";
routerFillter({ // routerFillter代替了原來的 Page
// 正常邏輯書寫
data: {},
...
})
這樣一個簡單的路由攔截功能就完成了。好買網GOODmai
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70008684/viewspace-2838367/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 前端架構之vue+axios 前端實現登入攔截(路由攔截、http攔截)前端架構VueiOS路由HTTP
- Vue.js和微信小程式路由(頁面)跳轉攔截Vue.js微信小程式路由
- Java實現的攔截器Java
- Java Struts 實現攔截器Java
- 如何實現一個react-router路由攔截(導航守衛)React路由
- Autofac實現攔截器和切面程式設計程式設計
- IOS 手勢攔截iOS
- 微信小程式之頁面攔截器微信小程式
- 小tips-一種移動端模擬實現返回攔截的方案
- 手寫Spring MVC框架(二) 實現訪問攔截功能SpringMVC框架
- Flume內建攔截器與自定義攔截器(程式碼實戰)
- 怎樣攔截classloader實現類方法截獲
- cisco路由器上配置TCP攔截路由器TCP
- Android AOP程式設計之雙擊攔截實現Android程式設計
- Mybatis 分頁:Pagehelper + 攔截器實現MyBatis
- Struts2攔截器實現原理
- (系列十一)Vue3框架中路由守衛及請求攔截(實現前後端互動)Vue框架路由後端
- 一種移動端模擬實現返回攔截的方案
- Asp.Netcore使用Filter來實現介面的全域性異常攔截,以及前置攔截和後置攔截ASP.NETNetCoreFilter
- 自己動手實現一個前端路由前端路由
- 基於node Express 攔截器的實現Express
- SpringMVC中的攔截器Interceptor實現SpringMVC
- SpringBoot 手寫攔截器Spring Boot
- 【Struts2】:攔截器實現方法過濾
- 攔截器,攔截器棧總結
- flutetr dio 攔截器實現 token 失效重新整理
- SpringBoot 整合 Shiro 實現登入攔截Spring Boot
- 前後端實現登入token攔截校驗後端
- MyBatis攔截器優雅實現資料脫敏MyBatis
- Struts2中攔截器的簡單實現
- SpringMVC使用攔截器實現許可權控制SpringMVC
- 編寫驅動攔截NT的API實現隱藏檔案目錄 (轉)API
- 小程式實現手寫簽名
- 從程式設計攔截器到大腦資訊攔截處理架構程式設計架構
- 高併發微信域名攔截檢測介面實現原理
- Flutter下實現WebView攔截載入離線資源FlutterWebView
- SpringBoot實現過濾器、攔截器與切片Spring Boot過濾器
- Spring AOP 在 XML檔案中實現 AspectJ 攔截SpringXML