H5跳转到小程序

 <!--env-version 正式版release、开发版develop、体验版trial-->
          <wx-open-launch-weapp
            id="launch-btn"
            username=""
            :path="`/pages/download/index?url=${encodeURIComponent(url)}`"
            env-version="develop"
            @launch="handleLaunchFn"
            @error="handleErrorFn"
            style="display: inline-block; width: 100%;height: 100%;opacity: 0; position: absolute; top: 0;"
          >
          <script v-is="'script'" type="text/wxtag-template">
            <style v-is="'style'">
              .btn {
                width: 100%;
                height: 100%;
              }
            </style>
            <button class="btn">跳转</button>
          </script>
        </wx-open-launch-weapp>


        if (window.navigator.userAgent.toLowerCase().indexOf('micromessenger') !== -1) {
          WxConfig.initConfig();
          // 微信公众号
          this.browser = 'minih5';
        }


        /* eslint-disable */
import request from '@/axios/request';

export default {
  initConfig: function () {
    var api = '签名接口'; // 接口地址
    var url = window.location.href;
    request({
      url: api,
      method: 'post',
      data: url,
    }).then((res) => {
      var getMsg = res.data;
      wx.config({
        debug: false, // 生产环境需要关闭debug模式
        appId: getMsg.appId, // appId通过微信服务号后台查看
        timestamp: getMsg.timestamp, // 生成签名的时间戳
        nonceStr: getMsg.nonceStr, // 生成签名的随机字符串
        signature: getMsg.signature, // 签名
        jsApiList: ['chooseImage', 'getLocalImgData'],
        openTagList: ['wx-open-launch-weapp']
      });
    })
  },
  wxShowMenu: function () {
    var api = '签名接口'; // 接口地址
    var url = window.location.href;
    request({
      url: api,
      method: 'post',
      data: url,
    }).then((res) => {
      var getMsg = res.data;
      getMsg.title = '标题';
      getMsg.desc = '描述';
      getMsg.imgUrl = '';
      wx.config({
        debug: false, // 生产环境需要关闭debug模式
        appId: getMsg.appId, // appId通过微信服务号后台查看
        timestamp: getMsg.timestamp, // 生成签名的时间戳
        nonceStr: getMsg.nonceStr, // 生成签名的随机字符串
        signature: getMsg.signature, // 签名
        jsApiList: [
          // 需要调用的JS接口列表
          'onMenuShareAppMessage', // 分享给好友
          'onMenuShareTimeline', // 分享到朋友圈
          'showMenuItems',
          'hideMenuItems',
        ],
      });
      wx.ready(function() {
        // config信息验证后会执行 ready 方法,所有接口调用都必须在 config 接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,
        // 则须把相关接口放在 ready 函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在 ready 函数中。
        wx.checkJsApi({
          jsApiList: ['showMenuItems'], // 分享到朋友圈,
          success: function (res) {
            wx.showMenuItems({
              menuList: [
                'menuItem: share:appMessage', // 发送给朋友
                'menuItem: share:timeline', // 分享到朋友圈
              ],
            });
          },
        });
        wx.onMenuShareAppMessage({
          title: getMsg.title, // 分享标题
          desc: getMsg.desc, // 分享描述
          link: getMsg.url, // 分享链接, 一定要获取当前页面的Url
          imgUrl: getMsg.imgUrl, // 分享图标
        });
        wx.onMenuShareTimeline({
          title: getMsg.title, // 分享标题
          link: getMsg.url, // 分享链接
          imgUrl: getMsg.imgUrl, // 分享图标
        });
      });
      wx.error(function(res) {
        // config信息验证失败会执行 error 函数,如签名过期导致验证失败,具体错误信息可以打开 config 的debug模式查看,
        // 也可以在返回的 res 参数中查看,对于 SPA 可以在这里更新签名。
        console.log(res);
      });
    });
  },
};



<template>
</template>

<script>
import { baseUrl } from '@/common/config';
export default {
  name: "index",
  data() {
    return {
    };
  },
  onHide() {
    wx.hideLoading();
    uni.navigateBack();
  },
  onLoad(o) {
    const url = o.url;
    if (url) {
      wx.showLoading({
        title: '文件加载中...',
      })
      wx.downloadFile({
        url: baseUrl + '/api/app/certification/read?url=' + decodeURIComponent(url),
        success (res) {
          // 只要服务器有响应数据,就会把响应内容写入文件并进入 success 回调,业务需要自行判断是否下载到了想要的内容
          if (res.statusCode === 200) {
            var filePath = res.tempFilePath;
            wx.openDocument({
              showMenu: true,
              filePath: filePath,
              fileType: 'pdf',
              success: function (res) {
                console.log('打开文档成功')
              },
              fail(err) {
                console.log('download err: ', err);
              }
            })
          }
        },
        fail(err) {
          console.log('download err: ', err);
        }
      })
    }
  },
}
</script>

<style scoped>

</style>
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值