1. 程式人生 > >11.20 小程序開發總結 (1)

11.20 小程序開發總結 (1)

var 需要 err 獲取數據 cti 程序開發 span 商品 scene

小程序接口:

1.getCurrentPages 獲取頁面前幾個頁面的所有app.js 信息 (太強了!!我竟然才知道)

用途:獲取上個頁面的函數來獲取做數據交互, 類似react 父級給子級傳參,函數等.

 代碼:

    var pages = getCurrentPages();
    var prevPage = pages[pages.length - 2]; //上一個頁面
    

此時獲取到上個頁面所有的函數,及其參數;

2.小程序二維碼傳參,分享傳參

 需求:新版小程序中分享(轉發)接口調整,無法攜帶參數字段,若要在從轉發鏈接中獲取所需的參數無法實現;

 解決:在跳轉該頁面時帶上所需的參數,這樣轉發時即會帶上這些參數,只要在獲取分享頁面時在onload中獲取數據即可解決參數無法傳遞問題;

 例: 一個商品的詳情 需要我分享出去後在另一個用戶打開時獲取到是從誰分享的;

  我們就可以在商品列表頁點擊商品跳轉時給其拼接上該用戶的id,這樣分享詳情時即會帶上我們所有的參數;

 代碼:

  onLoad: function (options) {
    let Id, userId, scene;
    if (options.scene){
      scene = decodeURIComponent(options.scene);
    }
      if (!util.isNull(scene)) {
        let sceneStr = scene.split(‘_‘);
        Id = util.isNull(sceneStr[1]) ? null : sceneStr[1];
        userId = util.isNull(sceneStr[2]) ? null : sceneStr[2];
      } else {
        Id = util.isNull(options.houseId) ? null : options.Id;
        userId = util.isNull(options.userId) ? null : options.userId;
      }
    if (app.globalData.userId && !userId){
       userId = app.globalData.userId;
     }
    this.onGetHouseReferrer(Id, userId);
}

詳情中onload的代碼

  

11.20 小程序開發總結 (1)