vue2公众号跳转小程序 wx-open-launch-weapp 超完整流程

这篇具有很好参考价值的文章主要介绍了vue2公众号跳转小程序 wx-open-launch-weapp 超完整流程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 根据微信网页开发 / 开放标签说明文档 (qq.com)看开放标签 wx-open-launch-weapp 说明,从上往下完整的看到2.1
  2. 根据签名算法见JS-SDK说明文档的附录,所有开放标签列表见文末的附录1 概述 | 微信开放文档 获取wx.config 中相关签名等配置参数(后端通过接口传给我们)
  3. 开发者调试需要在真机上调试(手机等),本地授权跳转小程序是不起作用的
  4. 在期间出现什么问题一定要和后端及时沟通,如invalid signature签名错误 问题
  5. 附上完整代码:

router路由界面:(在这加的获取url 是为了兼容苹果手机)

router.beforeEach((to, from, next) => {
  // alert('路由拦截器beforeEach一进入的url'+','+ window.location.href)
  /********************* 公众号跳转小程序 配置  *************************/
  if(window.entryUrl===undefined){
    window.entryUrl= window.location.href.split('#')[0]
  }
  if(window.location.href){
    sessionStorage.weappUrl = window.location.href.split('#')[0]
  }
 /********************* 公众号跳转小程序 配置  *************************/
})

要添加跳转的小程序的页面:

<template>
        <div class="medical_one">

          <wx-open-launch-weapp
          id="launch-btn"
          appid="小程序id"
          path="跳转到小程序的页面路径(后面可拼接参数)"
          @error="handleErrorFn"
          @launch="handleLaunchFn"
        >
          <script type="text/wxtag-template">
            <style>.btn { padding: 23px 16px; background-color: red;  }</style>
            <div class="btn">
              病案小程序
            </div>
          </script>
        </wx-open-launch-weapp>


    <!--上面 开放标签里自带的样式不符合我的需求,所以我自己加了样式,将开放标签里自带的样式用透明色隐藏了起来-->
          <wx-open-launch-weapp
          id="launch-btn"
          appid="小程序id"
          path="跳转到小程序的页面路径(后面可拼接参数)"
          @error="handleErrorFn"
          @launch="handleLaunchFn"
        >
          <script type="text/wxtag-template">
            <style>.btn {  padding: 23px 16px; background-color: transparent; color: transparent;  }</style>
            <div class="btn">
              病案小程序
            </div>
          </script>
        </wx-open-launch-weapp>


        </div>

    <!--上面 开放标签里自带的样式不符合我的需求,所以我自己加了样式,将开放标签里自带的样式用透明色隐藏了起来,通过.medical_one 用定位定位我想要的位置上 -->

        <div class="medical_one">

          <wx-open-launch-weapp
          id="launch-btn"
          appid="小程序id"
          path="跳转到小程序的页面路径(后面可拼接参数)"
          @error="handleErrorFn"
          @launch="handleLaunchFn"
        >
          <script type="text/wxtag-template">
            <style>.btn {  padding: 23px 16px; background-color: transparent; color: transparent;  }</style>
            <div class="btn">
              病案小程序
            </div>
          </script>
        </wx-open-launch-weapp>


        </div>

</template>

<script>
const { callConfigSignApi } = require("../flowModulation/service/SyncRequest"); //引入获取签名等配置的接口
export default {
  data() {
    return {
      SignUrl: '' //获取签名接口的入参url
    }
  },
   
 methods: {
    handleErrorFn(e) {
       console.log('fail', e.detail);
    },
    handleLaunchFn(e) { 
      console.log('success', e)
    },
      // 从公众号跳转小程序 初始化配置
    initData () {
      // alert('走点击调接口方法callConfigSignApi'+','+ window.location.href)
      let url = ''
      if(window.entryUrl){
        url = window.entryUrl
      }else if(sessionStorage.weappUrl){
        url = sessionStorage.weappUrl
      }else{
        url = window.location.href.split('#')[0]
      }
      this.SignUrl = url
      console.log('获取当前页面url方法',this.SignUrl)
      // alert('this.SignUrl跳转'+','+ this.SignUrl)
      this.getConfigSign()
    
    },
    async getConfigSign(){
      let code = '';
      const res = await Promise.all([
        callConfigSignApi(this.SignUrl,code), //和后端对接 接口需要的参数
      ]);
      // let aa = JSON.stringify(res)
      // alert('接口出参'+':'+ aa)
      console.log("callConfigSignApi返回", res);
      if (res[0].data.code == 200) {
        const { nonceStr, signature, timestamp} = res[0].data.data
        wx.config({
          debug: false, //   debug: true 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印
//------  debug: true, 开发者记得打开true可调试哦,在真机上会出现弹窗,提示是否授权成功 -----
          appId: '公众号的appid', // 必填,公众号的唯一标识
          timestamp: timestamp , // 必填,生成签名的时间戳
          nonceStr: nonceStr, // 必填,生成签名的随机串
          signature: signature,// 必填,签名
          jsApiList: [callConfigSignApi,'wx-open-launch-weapp', 'chooseImage', 'previewImage'], // 必填,需要使用的JS接口列表 (我其实不是很懂这代表的含义)
          // openTagList: ['wx-open-launch-app'] // 可选,需要使用的开放标签列表,例如['wx-open-launch-app'] 这个是app的,小程序是wx-open-launch-weapp
          openTagList: ['wx-open-launch-weapp']
        });
        // alert('配置下面的'+','+timestamp)
        wx.ready(function() {
          // alert('config ready')
          console.log('config ready');
        });
        wx.error(function(){
          // alert('config error')
          console.log('config error');
        })



      }
    }
 },


 mounted() {
    //初始化
    this.initData()  //里封装的方法一定要按照我这样分开写哦,要不然可能会出现提示签名错误
 }


}


</script>

要添加跳转的小程序的页面:

出现的常见错误(等我有时间再补充的更完整吧)

  1. invalid signature签名错误
  2. 点击不生效问题
  3. 样式问题

微信小程序学习实录8:H5网页跳转小程序(微信开放标签、wx-open-launch-weapp按钮不显示、noPermissionJsApi)_wx-open-launch-weapp 不显示-CSDN博客

wx-open-launch-weapp 按钮为什么不显示? | 微信开放社区 (qq.com)

wx-open-launch-weapp 样式问题 - 文章教程 - 文江博客 (wenjiangs.com)

html 使用 wx-open-launch-weapp 跳转小程序_写一个html页面启动小程序-CSDN博客

公众号跳转小程序 wx-open-launch-weapp_微信公众号跳小程序-CSDN博客

 微信公众号跳转小程序 wx-open-launch-weapp (最全指南及坑)微信开放标签wx-open-launch-app点击无反应?任何弹框都唤醒不起来 | 微信开放社区

https://www.cnblogs.com/Can-daydayup/p/15404964.html?utm_source=tuicool&utm_medium=referral

Vue单页面应用下IOS签名失败_window.entryurl-CSDN博客

微信公众号跳转小程序 wx-open-launch-weapp,在vue3+vite中使用 (多个问题集锦) - 知乎文章来源地址https://www.toymoban.com/news/detail-850952.html

到了这里,关于vue2公众号跳转小程序 wx-open-launch-weapp 超完整流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp微信公众号跳转到小程序(是点击微信页面上面的按钮/菜单跳转)

    先看效果 先贴代码: 1、先下载依赖 2、main.js 3、使用的页面引入(或者main引入) 4、初始化、注册 5、html 接下来才是重点: 要在公众号后台配置JS接口安全域名、网页授权域名、IP白名单,而且域名需要备案,在微信开发者工具中不能通过ip调试,可以修改本地hosts代理一下

    2024年02月09日
    浏览(116)
  • 公众号自动回复消息添加跳转小程序链接

    是要实现在小程序授权公众号收发消息功能 在用户关注后自动回复消息(因为要实现授权前提是用户必须先关注了公众),在消息中添加可跳转小程序的链接,就可以将小程序的参数传到授权页面进行授权,这个授权页面是一个h5页面用webview嵌在小程序中显示,因为使用小程

    2024年02月12日
    浏览(51)
  • 微信小程序学习实录8:H5网页跳转小程序(微信开放标签、wx-open-launch-weapp按钮不显示、noPermissionJsApi)

    微信小程序学习实录7(H5嵌入小程序、获取微信收货地址、数组对象url传值、js获取url参数) 微信小程序学习实录6(百度经纬度采集、手动调整精度、H5嵌入小程序、百度地图jsAPI、实时定位、H5更新自动刷新) 微信小程序学习实录5(H5嵌入小程序、map组件、地图调起功能、腾讯百度

    2024年02月04日
    浏览(77)
  • 微信公众号自动回复消息如何跳转小程序?

    微信公众号自动回复如何显示小程序并且支持跳转到小程序? 比如像这样 其实上也很简单,只需要一串代码即可实现。 微信公众号自动回复消息如何跳转小程序? 这样就行了。 其实就是一个类似于超链接的东西,只不过是需要几个特性的属性 data-miniprogram-appid=“wx2b38b5a0

    2024年02月07日
    浏览(47)
  • 让微信公众号自动回复可以跳转小程序的消息

    1、在公众号中关联对应的小程序 点击公众号左侧菜单栏“小程序管理”,点击“添加”按钮。 ​ 添加小程序,点击“关联小程序” ​ 输入对应的小程序名称,点击搜索,显示出对应的小程序信息,点击“下一步”按钮,用管理员的微信扫码授权即可。 ​ 2、设置公众号的

    2024年02月12日
    浏览(47)
  • 微信公众号关注回复多条信息(文字、图片、视频、跳转小程序)

    对于没做过关注回复多条信息的开发来说,没有实现的思路,花费了一天的时间研究写代码、测试,现做个记录 公众号后台配置关注自动回复只能配置一种(文字、图片、音频、视频、视频号动态) 想要多条如何实现昵?关闭自动回复出现,点击查看详情,出现如下提示 开

    2024年02月06日
    浏览(72)
  • 微信公众号自动回复设置层级以及点击文字跳转小程序

    这个功能仅在微信中有作用,所以,一些标签是微信特有的。其实这个功能就是用到了微信的 bizmsgmenu 。基本格式是 再配合上a标签,最终的样子是这样: 5e239977cff1d3893c65e87afa2a25f5.png dd8e7896144b9375103aa8be755df7aa.png 回复内容纯文字就可以 57957552652781bc221817f92052afe9.png b3ed6d03178143

    2024年02月10日
    浏览(63)
  • 公众号推送模板消息,跳转小程序报错invalid weapp pagepath

    官网中的请求参数示例如下 可以看到官方文档中关于mp_template_msg参数中miniprogram中是pagepath 但实际上是官网文档有误 而应该是path就可以正常了

    2024年02月12日
    浏览(43)
  • 微信小程序实现视频号跳转

    三种类型: 1、跳转到视频号主页------必须是同主体 调用函数 2、使用内嵌------必须是同主体 使用 存在弊端:无法设置海报图,默认画面为视频第一帧,会出现图片拉伸情况。(目前没有找到好的解决办法,如果有知道方法的朋友,希望在下方留个言) 3、跳转到视频号视频

    2024年02月08日
    浏览(183)
  • vue H5跳转小程序报错:config:fail,Error: 系统错误,错误码:63002,invalid signature

    【相关文档】 微信开发者工具下载地址与更新日志 微信网页开发 /JS-SDK说明文档 微信 JS 接口签名校验工具 全局返回码说明 H5跳转小程序报错:config:fail,Error: 系统错误,错误码:63002,invalid signature,如下: 查看文档:错误码:63002,invalid signature 表示无效的签名: 确认签名算

    2024年02月16日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包