微信小程序web-view环境下h5跳转小程序页面方法(代码片段)

YZHD YZHD     2023-04-09     179

关键词:

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

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

...式分为云函数跳转和开放性标签跳转。开放性标签是针对微信里面浏览器使用的,而云函数跳转在外部以及微信里面都可以使用。建议需要的同学先全部浏览一遍本文。内容较长较为啰嗦。一、不用开放性标签(wx-open-lau... 查看详情

小程序和h5页面的相互跳转

小程序跳转到H5页面小程序跳转H5页面是通过web-view组件来实现的,web-view是一个可以用来承载网页的容器,会自动铺满整个小程序页面,也就是说h5页面的跳转是在小程序的环境下打开的。需要在小程序里建立一个空... 查看详情

微信小程序web-view,嵌入h5页面

...嵌入先有的小程序。2、并且要实现H5支付功能解决方式:web-view1、登陆小程序管理后台a.如果是公众号。则进行双向绑定完成这一步,那么基本上就差不多成功了一大半2、在小程序里面嵌入h5web-view文档里面有的东西,就不赘述le... 查看详情

微信小程序web-view,嵌入h5页面

...嵌入先有的小程序。2、并且要实现H5支付功能解决方式:web-view1、登陆小程序管理后台a.如果是公众号。则进行双向绑定完成这一步,那么基本上就差不多成功了一大半2、在小程序里面嵌入h5web-view文档里面有的东西,就不赘述le... 查看详情

小程序和h5页面的相互跳转

参考技术A    小程序跳转H5页面是通过web-view组件来实现的,web-view是一个可以用来承载网页的容器,会自动铺满整个小程序页面,也就是说h5页面的跳转是在小程序的环境下打开的。需要在小程序里建立一个空白页... 查看详情

h5打开微信小程序带参数

参考技术Ah5打开微信小程序带参数还是版本低的原因,升级版本就可以了。 参考技术B我们可能希望在h5网页中点击按钮或者图片跳转小程序任意页面;也就是说H5链接带参数跳转微信小程序。 查看详情

微信小程序web-view组件嵌入h5页面导致双导航栏,如何只保留其中一个?(代码片段)

...已知存在一个微信小程序,该小程序的某个页面通过web-view组件嵌套了我们app的一个h5页面,h5页面本身有自己的导航栏,就导致了双导航栏。由于uniapp的web-view组件一定有原生导航栏,pages.js中设置navigationStyle:custo... 查看详情

微信小程序封装h5使用web-view源码

参考技术A微信小程序封装H5域名使用微信小程序web-view组件进行封装H5网页,最快的速度完成展示型小程序。注:web-view组件不支持个人小程序,只能认证过的企业小程序。··· 查看详情

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

...到这两个参数呢?下面开始一一介绍:渠道很有多,我以微信客户端来说明。可以在微信上搜索你的目标小程序,下面我随便一个小程序说明。通过微信公众开发平台,进入后台之后搜索你的目标小程序后面就简单啦,你想得到... 查看详情

h5跨平台能力调研

...程序、今日头条小程序等)对H5页面的支持是通过提供<web-view/>组件的方式。<web-view/>组件是一个可以用来承载H5网页的组件,会自动铺满整个小程序页面。各平台能力比较 微信小程序支付宝小程序百度小程序今日头... 查看详情

微信小程序web-view组件嵌入h5页面导致双导航栏,如何只保留其中一个?(代码片段)

...已知存在一个微信小程序,该小程序的某个页面通过web-view组件嵌套了我们app的一个h5页面,h5页面本身有自己的导航栏,就导致了双导航栏。由于uniapp的web-view组件一定有原生导航栏,pages.js中设置navigationStyle:custo... 查看详情

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音(代码片段)

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音1、目前的需求是什么2、都踩了那些坑1、小程序2、h5语音提示3、语音合成声音录制不进去,ios有时候是麦克风,有时候是听筒发音!4、语音合成声音录... 查看详情

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音(代码片段)

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音1、目前的需求是什么2、都踩了那些坑1、小程序2、h5语音提示3、语音合成声音录制不进去,ios有时候是麦克风,有时候是听筒发音!4、语音合成声音录... 查看详情

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音(代码片段)

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音1、目前的需求是什么2、都踩了那些坑1、小程序2、h5语音提示3、语音合成声音录制不进去,ios有时候是麦克风,有时候是听筒发音!4、语音合成声音录... 查看详情

微信小程序web-view与h5通信方式探索(代码片段)

...等)小程序WebView基本用法定义:微信小程序组件Web-view定义:承载网页的容器用法<web-view class="web-holder" src="url" bindload="bindload" binderror="binderror" bindmessage="bindGetMsg">... 查看详情

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

参考技术AH5跳转小程序。1登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。2这个JS接口安全域名就是访问你H5地址的域名。3通过config接口注入权限验证配置并申请所需开放标签(签名算法)如果... 查看详情

微信小程序web-view页面无法显示

参考技术A众所周知微信的WebView有很强的缓存保护机制,当你第一次访问页面报错后就算修改了线上的H5页面再去访问也是照样空白怎么解决呢?其实很简单,WebView的缓存机制都是通过链接缓存的给链接后面加一个时间戳或者其他的... 查看详情

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音(代码片段)

微信小程序web-view外部引用h5页面调用摄像头录制视频配有提示音1、目前的需求是什么2、都踩了那些坑1、小程序2、h5语音提示3、语音合成声音录制不进去,ios有时候是麦克风,有时候是听筒发音!4、语音合成声音录... 查看详情