本篇文章為大家帶來了關於微信小程式的相關知識,其中主要介紹了關於頁面路由的相關內容,路由是指分組從來源到目的地時,決定端到端路徑的網路範圍的進程,下面就一起來看一下,希望對大家有幫助。
【相關學習推薦:小程式學習教學】
什麼是路由?
路由(routing)是指分組從來源到目的地時,決定端對端路徑的網路範圍的進程。我們可以理解微信小程式頁面路由,根據路由規則(路徑)從一個頁面跳到另一個頁面的的規則。
一、哪些會觸發頁面跳轉
- 小程式啟動,初始化第一個頁面
- 跳到新頁面,呼叫
wx.navigateTo
或<navigator></navigator>
- 頁面重定向,呼叫
wx.redirectTo
或<navigator></navigator>
- 頁面返回,呼叫
wx.navigateBack
,頁面左上角返回按鈕 -
wx.switchTab
實作tabBar
頁面切換
Tips: 所有頁面都必須在app.json中註冊,例如
{ "pages": [ "pages/index/index", "pages/classification/classification", "pages/start/start", "pages/detail/detail", ] }
二、微信小程式中實作頁面路由的幾種方式
-
wx.navigateTo
,保留目前頁面,跳到應用程式內的某個頁面,但不能跳到tabbar 頁面
wx.navigateTo({ url: 'pages/detail/detail', success: function(res) {}, ... })
-
wx.redirectTo
,關閉目前頁面,跳到應用程式內的某個頁面,但是不允許跳到tabbar 頁面
wx.redirectTo({ url: 'pages/detail/detail', success:function(res){}, ... })
-
<navigator></navigator>
元件跳轉方式
<navigator>跳转</navigator>
-
wx.navigateBack
回到上一頁
wx.navigateBack({ delta: 1, })
Tips: delta為1時表示回上上一頁,為2時表示上上一頁,以此類推;如果dalta大於已開啟的頁面總數,則返回首頁。返回後,元介面會銷毀
-
wx.switchTab
跳到tabBar 頁面,並關閉其他所有非tabBar 頁面
app.json:
{ "tabBar": { "list": [{ "pagePath": "pages/index/index", "text": "首页", }, { "pagePath": "pages/car/car", "text": "购物车", }, ... } }
index.js:
wx.switchTab({ url: 'pages/car/car' })
三、小程式路由實作原理
小程式路由是透過自己實作的一個棧(先進先出)來管理的。
當我們透過wx.navigateTo
或<navigator></navigator>
從A頁面跳到B頁面。路由棧的變化是這樣的。
路由堆疊剛開始只存有頁面A,當使用wx.navigateTo
跳轉後,頁面B推入路由堆疊並展示到介面上,頁面A隱藏。
當我們使用wx.navigateBack
返回時
#那麼wx.redirectTo
與wx.navigateTo
有什麼差別呢?
假如目前已經在二級頁面B上,我們使用wx.redirectTo
跳到C頁面,其流程是這樣的。
如目前已經在二級頁面B上,我們使用wx.redirectTo
跳到C頁面,其流程是這樣的。
[外鏈圖片轉存…(img-mkPnbKug-1650431194878)]
頁面B會被pop出,然後C頁面再push進入棧,這時候棧中還是只有兩個頁面。
【相關學習推薦:小程式學習教學】
以上是微信小程式之頁面路由知識點總結的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

SublimeText3 英文版
推薦:為Win版本,支援程式碼提示!

SublimeText3 Linux新版
SublimeText3 Linux最新版

WebStorm Mac版
好用的JavaScript開發工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),