欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序使用navigator實現(xiàn)頁面跳轉功能

 更新時間:2022年08月19日 15:40:45   作者:早起的年輕人  
本周學習了navigtor到導航組件,目前我想使用navigtor組件實現(xiàn)跳轉以及返回功能,下面這篇文章主要給大家介紹了關于微信小程序使用navigator實現(xiàn)頁面跳轉功能的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

前言

在微信小程序開發(fā)中,navigator 用來實現(xiàn)頁面路由功能,比如 A頁面 中點擊頁面打開B頁面

1 navigator 默認方式打開新的頁面

<navigator url="/pages/code1/navigator/bPage">
  <text>打開B頁面</text>
</navigator>

等效于

<navigator url="/pages/code1/navigator/bPage" open-type="navigate">
  <text>打開B頁面</text>
</navigator>

open-type 是指定了頁面跳轉的方式,默認是 navigate ,頁面層疊方式如下

對應的有點擊事件,在JS中打開頁面

<view bindtap="openNavigatorBPage" data-index='1'><text>打開B頁面</text></view>

在這里 data-index 是我頁面綁定的參數(shù),在對應的方法中通過 currentTarget.dataset.index 方式獲取

如果我寫的是 data-id ,那么點擊事件中獲取方式為 currentTarget.dataset.id

  openNavigatorBPage:function (options) {
    //獲取綁定的參數(shù)
    let id = options.currentTarget.dataset.index;
    wx.navigateTo({
      url: '/pages/code1/navigator/bPage?id='+id,
    })
  },

然后 在目標頁面中的 onLoad 方法中可以獲取這個參數(shù)

  onLoad: function (options) {
    let id = options.id;
  },

2 redirect 替換當前頁面

open-type 可取值為 redirect ,就是直接替換當前頁面

<!--類似a標簽  open-type 跳轉方式-->
<navigator url="/pages/code1/navigator/bPage" open-type="redirect">
  <text>打開B頁面</text>
</navigator>

對應的 js 方法為

 wx.redirectTo({
    url: '/pages/code1/navigator/bPage?id='+id,
  })

3 reLaunch 重新加載當前頁面

open-type 可取值為 reLaunch ,就是相當于是重新加載了一下當前頁面

<navigator url="/pages/code1/navigator/bPage" open-type="reLaunch">
  <text>打開B頁面</text>
</navigator>

對應的 js 方法為

 wx.reLaunch({
    url: '/pages/code1/navigator/bPage?id='+id,
  })

4 navigateBack 關閉當前頁面

可以直接在頁面中 使用 navigator 標簽嵌套

<navigator open-type="navigateBack">
  <text>關閉頁面</text>
</navigator>

等效于

<view bindtap="closeBPage" data-index='1'>
  <text>關閉B頁面</text>
</view>
  closeBPage: function () {
    wx.navigateBack()
  },

5 navigateBack 關閉當前頁面 并攜帶參數(shù)

A頁面通過wx.navigateTo跳入到B頁面,然后B頁面執(zhí)行wx.navigateBack返回到A頁面時候傳給A頁面參數(shù)

A頁面中定義接收

Page({

  /**
   * 頁面的初始數(shù)據(jù)
   */
  data: {
    param: undefined,
  },

  /**
   * 生命周期函數(shù)--監(jiān)聽頁面顯示
   */
  onShow: function () {
    let param = this.data.param;
    if (param) {
      //有回傳參數(shù) 處理頁面業(yè)務邏輯
    }
  },
);

  //打開B頁面
  openNavigatorBPage: function (options) {
    //獲取綁定的參數(shù)
    let id = options.currentTarget.dataset.index;
    wx.re({
      url: '/pages/code1/navigator/bPage?id=' + id,
    })
  },

在B頁面中,關閉B頁面的時候,設置回傳參數(shù)

closeBPage: function () {
    //getCurrentPages()函數(shù)是用來獲取當前頁面棧的實例,
    //返回的是一個按棧的順序排列的數(shù)組pages_arr,且數(shù)組中的第一項為首頁,最后一項為當前頁。
    //獲取當前頁面js里面的pages里的所有信息。
    let pages = getCurrentPages();
    //pages[pages.length - 2]是指的上一頁,然后獲取到上一個頁的page對象后直接執(zhí)行修改param的操作,這樣就實現(xiàn)了在B頁面修改A頁面數(shù)據(jù)的功能
    let prevPage = pages[pages.length - 2];
    prevPage.setData({
      param: 111, // 設置需要傳遞的參數(shù)

    })
    wx.navigateBack({
      delta: 1
    })
  },

完畢

補充:解決微信小程序navigator點擊無法跳轉的問題

最近在搞微信小程序時發(fā)現(xiàn)頁面跳轉不成功,也沒有報錯,最后查了很多資料終于解決了問題,浪費了很多時間,現(xiàn)將可能的原因和我的解決方案列出來供各位參考:

1、app.json里面是否配置了頁面,如果未配置,請在pages中添加。

2、跳轉路徑是否正確,盡量不要用相對路徑,使用絕對路徑’/pages/…’。

3、分清幾種跳轉的方式,特別是TabBar中要使用wx.switchTab。

4、(最坑的問題,我遇到的問題就是這個)如果之前在app.json中設置了TabBar并且其中l(wèi)ist中已有路徑,那么在其它地方就不能再使用,使用不報錯,但是也無效,不會發(fā)生跳轉。例如我在TabBar中的list中設置了一個pages/shoplist/shoplist路徑,而我想在index頁面中通過點擊一個navigator跳轉到/pages/shoplist/shoplist這個頁面,就不能進行跳轉.

**這是我的index頁面,我想點擊這個導航跳轉并傳遞參數(shù)到pages下面的shoplist頁面**

發(fā)現(xiàn)無法跳轉,并且也不報錯,就很奇怪

后來發(fā)現(xiàn)微信小程序開發(fā)中如果之前在app.json中設置了TabBar并且其中l(wèi)ist中已有路徑,那么在其它地方就不能再使用,使用不報錯,但是也無效,不會發(fā)生跳轉。

將tabbar下的pages/shoplist/shoplist路徑對應的對象刪除之后,再在index頁面中點擊navigator,就可以跳轉到想要的頁面了

總結

到此這篇關于微信小程序使用navigator實現(xiàn)頁面跳轉功能的文章就介紹到這了,更多相關小程序navigator頁面跳轉內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 基于Bootstrap table組件實現(xiàn)多層表頭的實例代碼

    基于Bootstrap table組件實現(xiàn)多層表頭的實例代碼

    Bootstrap table還有一個很多強大的功能,下面就通過本文給大家分享基于Bootstrap table組件實現(xiàn)多層表頭的實例代碼,需要的朋友參考下吧
    2017-09-09
  • JavaScript實現(xiàn)將Word文檔解析成瀏覽器認識的HTML

    JavaScript實現(xiàn)將Word文檔解析成瀏覽器認識的HTML

    這篇文章主要為大家詳細介紹了如何使用JavaScript實現(xiàn)將Word文檔解析成瀏覽器認識的HTML,文中的示例代碼講解詳細,感興趣的小伙伴可以了解下
    2024-02-02
  • 基于勻速運動的實例講解(側邊欄,淡入淡出)

    基于勻速運動的實例講解(側邊欄,淡入淡出)

    下面小編就為大家?guī)硪黄趧蛩龠\動的實例講解(側邊欄,淡入淡出)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-10-10
  • 在服務端(Page.Write)調用自定義的JS方法詳解

    在服務端(Page.Write)調用自定義的JS方法詳解

    自從[javascript]自定義MessageBox一文發(fā)布以后,很多網(wǎng)友都來信詢問,如何在服務端調用ShowInfo方法,周末休息想了個折中的辦法來實現(xiàn)
    2013-08-08
  • 通過flv.js播放監(jiān)控示例深入探究直播流技術

    通過flv.js播放監(jiān)控示例深入探究直播流技術

    本文記錄一下在使用 flv.js 播放監(jiān)控視頻時踩過的各種各樣的坑,雖然官網(wǎng)給的?Getting Started?只有短短幾行代碼,跑一個能播視頻的 demo 很容易,但是播放時各種各樣的異常會搞到你懷疑人生,下面我將自己踩過的坑,以及踩坑過程中補充的相關知識,詳細總結一下
    2023-10-10
  • input?獲取光標位置設置光標位置方案

    input?獲取光標位置設置光標位置方案

    這篇文章主要為大家介紹了input?獲取光標位置設置光標位置方案詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-06-06
  • js實現(xiàn)YouKu的漂亮搜索框效果

    js實現(xiàn)YouKu的漂亮搜索框效果

    這篇文章主要介紹了js實現(xiàn)YouKu的漂亮搜索框效果的方法,通過javascript結合鼠標事件與頁面樣式實現(xiàn)漂亮的搜索框效果,非常具有實用價值,需要的朋友可以參考下
    2015-08-08
  • js中如何對json數(shù)組進行排序

    js中如何對json數(shù)組進行排序

    這篇文章主要介紹了js中如何對json數(shù)組進行排序的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-04-04
  • js修改table中Td的值(定義td的雙擊事件)

    js修改table中Td的值(定義td的雙擊事件)

    這次是更改后的代碼實現(xiàn)以下功能:去掉了“確定”,“取消”按鈕。變單擊為雙擊事件,用戶按ESC鍵,取消更改感興趣的朋友可以了解下
    2013-01-01
  • bootstarp modal框居中顯示的實現(xiàn)代碼

    bootstarp modal框居中顯示的實現(xiàn)代碼

    這篇文章主要介紹了bootstarp modal框居中顯示的實現(xiàn)代碼,需要的朋友可以參考下
    2017-02-02

最新評論