微信小程序web-view环境下H5跳转小程序页面方法

Posted YZHD

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信小程序web-view环境下H5跳转小程序页面方法相关的知识,希望对你有一定的参考价值。

web-view页面内的H5页面跳转至小程序页面

一般的,web-view组件的src属性指定的H5页面之间,可以正常的采用超级链接a标记对进行页面之间的条转。但是web-view页面要想通过手指触碰返回小程序页面,就无法使用超级链接a标记了。那么这个问题应该如何解决呢?

1、在H5页面引入JSSDK

首先需要在H5页面中引入JSSDK,它可以让H5页面的js文件执行微信小程序的部分API命令。H5页面引入JSSDK的代码如下所示。

<script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>

2、跳转至小程序页面方法

  • wx.miniProgram.navigateTo()
  • wx.miniProgram.navigateBack()
  • wx.miniProgram.switchTab()
  • wx.miniProgram.reLaunch()
  • wx.miniProgram.redirectTo()

上述API的使用与微信小程序中页面跳转的API使用规范是一样的,以wx.miniProgram.navigateTo()为例,该方法的API格式如下所示。

// 判断当前环境是否为小程序
const ua = navigator.userAgent.toLowerCase();
if (ua.match(/MicroMessenger/i) == 'micromessenger') 
    wx.miniProgram.getEnv((res) => 
        if (res.miniprogram) 
            console.log('在小程序内');
         else 
            console.log('不在小程序内');
        
    );
 else 
    console.log('不在微信浏览器内');


// 小程序跳转方法
wx.miniProgram.navigateTo(
   url:'/pages/index/index',        // 指定跳转至小程序页面的路径
   success: (res) => 
	  console.log(res);   // 页面跳转成功的回调函数
   ,
   fail: (err) => 
	  console.log(err);   // 页面跳转失败的回调函数
   
);

// 通过链接与小程序通讯传参
// 静态参数传输
wx.miniProgram.navigateTo(
   url:'/pages/index/index?id=1', // id:所需参数
   success: (res) => 
	  console.log(res);   // 页面跳转成功的回调函数
   ,
   fail: (err) => 
	  console.log(err);   // 页面跳转失败的回调函数
   
);

// 动态参数传输
let id = 1;
wx.miniProgram.navigateTo(
   url:'/pages/index/index?id=' + id, // id:所需参数(动态参数需放在引号外小程序才可识别)
   success: (res) => 
	  console.log(res);   // 页面跳转成功的回调函数
   ,
   fail: (err) => 
	  console.log(err);   // 页面跳转失败的回调函数
   
);

注意事项:

  • 跳转 tabBar 页面只可使用 wx.miniProgram.switchTab() 方法,其他方法均无效。
  • wx.miniProgram.switchTab() 方法不可以携带参数,如跳转页面为 tabBar 页面则无法通过跳转路径实现H5与小程序之间的传参。

相应小程序官方文档:

https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.switchTab.html

总结
本文重点在于对web-view页面返回小程序页面进行了讲解和总结。在小程序开发过程中,web-view页面的实现还有许多开发技巧和功能,主要得力于JSSDK的使用。JSSDK的说明文档如下所示。

https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html

APP跳转小程序 (获取微信小程序username和path)

参考技术A 背景:需求是要实现App跳转小程序,而这个小程序是某平台的小程序。网上查阅跳转小程序需要两个核心参数, username 和 path 。那么我们怎么去得到这两个参数呢?下面开始一一介绍:

渠道很有多,我以微信客户端来说明。可以在微信上搜索你的目标小程序,下面我随便一个小程序说明。

通过 微信公众开发平台 ,进入后台之后搜索你的目标小程序

后面就简单啦,你想得到目标页面的path,只需浏览目标页面,然后点击右上角分享,复制页面路径。那就是当前页面的路径啦!

后续,你拿到了 username 和 path ,就可以愉快的跳转啦!

检查一下 path ,查看其他复制的 path 和当前的页面是否一致。如果一样,说明当前的页面是很有可能内部鉴权关系返回的地址。可以先将目标的页面分享到微信,然后在微信中打开此分享链接,进入目标小程序后,再次复制获取的 path 应该就是真正的加密路径 path 。

以上是关于微信小程序web-view环境下H5跳转小程序页面方法的主要内容,如果未能解决你的问题,请参考以下文章

小程序与H5如何互相跳转

微信小程序 h5页面跳转小程序(超详细讲解)

h5打开微信小程序带参数

vue项目-h5跳转小程序

H5跳转小程序,可以跳转任意小程序,以及任意小程序的页面地址获取。

微信支持H5跳转App、跳转小程序