微信小程序之间跳转

前提

微信小程序支持小程序之间进行跳转,但是要实现跳转需要满足几个条件:

1. 要实现跳转的里两个小程序,必须要要绑定在同一个公众号下面
微信小程序之间跳转_第1张图片
公众号后台.png

在公众号后台的小程序管理界面,点击关联小程序通过搜索小程序的appId添加关联小程序。

2. 注意微信基础库的版本,如果低于支持的最小版本则无法跳转。

通过小程序的wx.getSystemInfoAPI可以获取基础库版本。

wx.getSystemInfo({
    success:(res)=>{
        console.log(res.SDKVersion); //基础库版本
    }
});

在微信开发者工具上可以设置不同的基础库版本进行调试。


微信小程序之间跳转_第2张图片
image.png

如果小程序要运行在企业微信下,更需要注意基础库问题,企业微信的基础库会比微信的基础库低,不过现在最新版的企业微信基础已经满足条件了。不过在其他方面也需要注意,比如三方库的引用(echars等)。

实现跳转

方法一、wx.navigateToMiniProgram API实现

该API是比较早的实现小程序跳转的方法。具体使用方法请查看官方文档。该方法接收一个object作为参数。包含以下属性:

微信小程序之间跳转_第3张图片
image.png

但是,官方提示:此接口即将废弃,请使用 组件来使用此功能。

方法二、 组件实现

该组件支持小程序跳转的最低版本要求是2.0.7。支持的参数和navigateToMiniProgram一致。

微信小程序之间跳转_第4张图片
image.png

在开发过程中遇到这样的问题:我们是基于企业微信开发的(微信上没有测试),虽然企业微信支持该组件,而且基础库版本也达到了要求。使用该组件进行跳转时,安卓手机正常跳转,但是ios跳转不了,看控制台有报错 should have url attribute when using navigateTo, redirectTo or switchTab,看样子像是没有识别出我要进行小程序跳转,而是要进行页面跳转,所以提示必须有url属性。

通过百度和微信小程序的社区发现也有其他人有这个问题,但是没有找到解决办法,希望尽快解决(发现问题日期:2018/09/30)。无奈之下只得先暂时选择使用wx.navigateToMiniProgram方法实现。该方法是没有问题的。

你可能感兴趣的:(微信小程序之间跳转)