• js 多个小程序之间互相跳转,a小程序带参跳转到b小程序中


    小程序中实现两个或者多个小程序之间互相跳转,a小程序带参跳转到b小程序中。
    官方入口:wx.navigateToMiniProgram(Object object)

    https://developers.weixin.qq.com/miniprogram/dev/api/navigate/wx.navigateToMiniProgram.html

    在这里插入图片描述
    实现步骤:

    一、配置双方小程序的appid

    a小程序:app.json: //数组是其他小程序的appid

    “navigateToMiniProgramAppIdList”: [“wx344d57363fac…”]

    在这里插入图片描述
    b小程序中: app.json: //数组是其他小程序的appid

    “navigateToMiniProgramAppIdList”: [“a小程序的appid”]
    在这里插入图片描述

    二、跳转- a小程序中

    1、页面标签跳转

    <navigator 
        app-id="b小程序的appid"
        path="/pages/index/index?a=1" //b小程序的打开路径
        bindsuccess="successFun"      //跳转成功以后的回调函数
        version="develop"             //跳转 b小程序的版本号,如果是线上则不需要
        target="miniProgram" 
        open-type="navigate" 
        extra-data="{{message}}">
        跳转
    </navigator>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    2、js方法跳转

    
    //跳转到别的小程序
    goOtherPage:function() {
     
        wx.navigateToMiniProgram({
           appId: 'wx344d57363fac558a',
           path: '/pages/login/login?a=1',//跳转目标页面+携带参数
           extraData: {
               a: '123'//携带参数
            },
            envVersion: 'develop',
            success(res) {
                // 打开成功
                debugger
            }
        })
    },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    三、接收参数-b小程序中

    1、/pages/login/login?a=1 获取 a=1

    ***在跳转的页面里面,onLoad这个函数里面可以获取到

    在这里插入图片描述
    2、获取extraData

    message对象获取需要在小程序B的app.js的 onshow 或者 onlaunch 函数里面获取

    
    //login.js
    Page({
        
      onLaunch: function (e) {
        let path = e.path //路由 = pages/login/login
        let obj = e.referrerInfo
        let extraData = obj.extraData  //参数
        let appID= obj.appId          //参数
     
      },
     
      onShow:function(e){
        let path = e.path //路由 = pages/login/login
        let obj = e.referrerInfo
        let extraData = obj.extraData  //参数
        let appID= obj.appId          //参数
     
     
     
        let a = extraData.a  //拿到我们a小程序传的值了
      }
     
     
    })
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
  • 相关阅读:
    Camera2相机拍照流程之预览功能梳理
    面试25题
    跨平台游戏引擎 Axmol-2.0.0 正式发布
    目标检测的yolov3、4、5、6总结
    vcruntime140.dll文件缺失,去哪下载vcruntime140.dll文件
    JAVAEE之网络原理(2)_传输控制协议(TCP)、概念、格式、确认应答及超时重传机制
    Codeforces Round 896 (Div. 1) C. Travel Plan(树形dp+组合数学)
    msys2 |arch pacman:tesseract ocr 安装 - 思源笔记自动调用
    elasticsearch查询之三种fetch id的方案分析
    【JavaSE】static关键词
  • 原文地址:https://blog.csdn.net/weixin_39501680/article/details/127573083