1. 程式人生 > >微信小程式 --- 從A頁面傳參到B頁面設定web-view標籤src屬性傳參異常處理方法

微信小程式 --- 從A頁面傳參到B頁面設定web-view標籤src屬性傳參異常處理方法

一般情況頁面跳轉引數都是以下幾種姿勢

引數傳遞過去接收的處理方法,可以看我的另一篇博文,點選這裡跳轉

第一種:

  let parameter = 1;

  wx.navigateTo({
   url: '/page/a/a?parameter=' + parameter,
  })

第二種:

 let parameter = {
     propertyA: 1,
     propertyB: 2
 }

 wx.navigateTo({
     url: '/page/a/a?parameter=' + parameter,
 })

第三種:

 let parameter = [
     {
         propertyA: 1
, propertyB: 2 } ] wx.navigateTo({ url: '/page/a/a?parameter=' + parameter, })

或者還有其他方式 不過都是基於拼接字串的方式,進行引數傳遞

但以上方式當你從A頁面進行跳轉倒B頁面時傳遞引數到B頁面,在B頁面中設定web-view的src屬性時你會發現傳遞過去的引數沒了,完全無效,如果web-view的src屬性是完全寫死的話 直接寫死在頁面就可以了,但如果是動態傳遞引數比方一個ID什麼的,那肯定還是要傳參的,那麼既然傳不過去,在B頁面怎麼動態設定web-view的src屬性傳參?我們可以利用資料儲存進行資料儲存,然後再動態設定B頁面web-view的src屬性傳參,具體例子如下:

A頁面:

//A.js檔案

/**
 * A頁面跳轉方法
 */
 aJumpFun () {
    let url = 'https://blog.csdn.net?userId=' + this.data.userId;
    wx.setStorageSync('url', url);

    //跳轉到B頁面
    wx.navigateTo({
        url: '/page/B/B'
    })
 }

B頁面:

<!-- B.wxml -->

<web-view src="{{ src }}"></web-view>
//B.js
/** * 生命週期函式--監聽頁面載入 */ onLoad: function(options) { this.data.src = wx.getStorageSync('url'); this.setData({ src: this.data.src }); },

這樣就解決了A頁面跳轉到B頁面web-view標籤src屬性傳參的問題了,以上就是本文全部內容,希望幫助到你