您好,登錄后才能下訂單哦!
本篇內容介紹了“微信小程序路由跳轉的兩種方式是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
<navigator url="/pages/test/test" open-type="switchTab" >跳轉到新頁面</navigator>
通過open-type來選擇和上面一樣的跳轉方式
# wxml文件 <button bind:tap="tiao">跳轉</button> # js文件 tiao1:function(){ wx.reLaunch({ url: '/pages/test/test', }) },
# wxml文件 <button bind:tap="tiao">跳轉</button> # js文件 tiao1:function(){ wx.reLaunch({ url: '/pages/test/test', }) }, // 只能跳轉到tabBar頁面,不能跳轉到非tabBar頁面,并且關閉 //所有非tabBar頁面,url不能攜帶參數 wx.switchTab({ url: '/pages/test/test', }) //關閉所有的頁面,打開應用內的某個頁面,他的url可以攜帶參數 //在跳轉頁面的onload生命周期函數中去接收 wx.reLaunch({ url: '/pages/test1/test1?name=123&age=18', }) //關閉當前頁面,跳轉到應用內的某個頁面,但是不允許跳轉到 //tabbar頁面,他的路由也是可以攜帶參數的 wx.redirectTo({ url: '/pages/test1/test1?name='+this.data.name1+'&age=17', }) //保留當前頁面,跳轉到應用內的某個頁面,但是不能跳轉到 //tabbar,可以使用wx.navigateBack返回到原來的頁面, //他的url也可以帶參數,小程序中頁面最多棧10層 wx.navigateTo({ url: '/pages/test1/test1?name=333', }) //delat表示回退多少層 wx.navigateBack({ delta:1 })
這里的tabBar是底下的導航欄指定的頁面,
跳轉到 tabBar 頁面,并關閉其他所有非 tabBar 頁面
參數
Object object
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
url | string | 是 | 需要跳轉的 tabBar 頁面的路徑(需在 app.json 的tabBar字段定義的頁面),路徑后不能帶參數。 | |
success | function | 否 | 接口調用成功的回調函數 | |
fail | function | 否 | 接口調用失敗的回調函數 | |
complete | function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
示例代碼
{ "tabBar": { "list": [ { "pagePath": "index", "text": "首頁" }, { "pagePath": "other", "text": "其他" } ] } } wx.switchTab({ url: '/index' })
基礎庫 1.1.0 開始支持,低版本需做兼容處理。
關閉所有頁面,打開到應用內的某個頁面
參數
Object object
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
url | string | 是 | 需要跳轉的應用內頁面路徑,路徑后可以帶參數。參數與路徑之間使用?分隔,參數鍵與參數值用=相連,不同參數用&分隔;如 'path?key=value&key2=value2' | |
success | function | 否 | 接口調用成功的回調函數 | |
fail | function | 否 | 接口調用失敗的回調函數 | |
complete | function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
示例代碼
wx.reLaunch({ url: 'test?id=1' }) // test Page({ onLoad (option) { console.log(option.query) } })
關閉當前頁面,跳轉到應用內的某個頁面。但是不允許跳轉到 tabbar 頁面。
參數
Object object
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
url | string | 是 | 需要跳轉的應用內非 tabBar 的頁面的路徑, 路徑后可以帶參數。參數與路徑之間使用? 分隔,參數鍵與參數值用= 相連,不同參數用& 分隔;如 'path?key=value&key2=value2' | |
success | function | 否 | 接口調用成功的回調函數 | |
fail | function | 否 | 接口調用失敗的回調函數 | |
complete | function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
示例代碼
wx.redirectTo({ url: 'test?id=1' })
保留當前頁面,跳轉到應用內的某個頁面。但是不能跳到 tabbar 頁面。使用wx.navigateBack可以返回到原頁面。小程序中頁面棧最多十層。
參數
Object object
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
url | string | 是 | 需要跳轉的應用內非 tabBar 的頁面的路徑, 路徑后可以帶參數。參數與路徑之間使用? 分隔,參數鍵與參數值用= 相連,不同參數用& 分隔;如 'path?key=value&key2=value2' | |
success | function | 否 | 接口調用成功的回調函數 | |
fail | function | 否 | 接口調用失敗的回調函數 | |
complete | function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
示例代碼
wx.navigateTo({ url: 'test?id=1' }) // test.js Page({ onLoad(option) { console.log(option.query) } })
1.利用wx.navigateTo跳轉到下一個頁面的時候(這時候會執行onHide方法),下一個頁面頭部會有返回按鈕
2.如果不想有返回按鈕,可以用wx.redirectTo進行頁面跳轉(這時候關閉此頁面,會執行onUnload生命周期,這樣下一個頁面就不會有返回按鈕了,因為上一個頁面已經被關閉了,沒有頁面可以返回)
關閉當前頁面,返回上一頁面或多級頁面。可通過getCurrentPages()獲取當前的頁面棧,決定需要返回幾層。
參數
Object object
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
delta | number | 是 | 返回的頁面數,如果 delta 大于現有頁面數,則返回到首頁。 | |
success | function | 否 | 接口調用成功的回調函數 | |
fail | function | 否 | 接口調用失敗的回調函數 | |
complete | function | 否 | 接口調用結束的回調函數(調用成功、失敗都會執行) |
示例代碼
// 注意:調用 navigateTo 跳轉時,調用該方法的頁面會被加入堆棧,而 redirectTo 方法則不會。見下方示例代碼 // 此處是A頁面 wx.navigateTo({ url: 'B?id=1' }) // 此處是B頁面 wx.navigateTo({ url: 'C?id=1' }) // 在C頁面內 navigateBack,將返回A頁面 wx.navigateBack({ delta: 2 })
“微信小程序路由跳轉的兩種方式是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。