H5打开微信小程序

前置条件

  1. 小程序开发技术栈: uni-app
  2. 开通微信云开发
  3. 开通静态网站,需要在「微信开发者工具 - 云开发 - 更多 - 静态网站」里进行
  4. 官网链接: https://developers.weixin.qq.com/miniprogram/dev/wxcloud/guide/staticstorage/jump-miniprogram.html

开始

  1. 从官网上把官网给的例子下载下来,放在自己小程序的根目录,根据官网的说明把要替换的内容进行调整。


    image.png
  2. 新建vue.config.js文件,内容如下

const path = require('path')
const CopyWebpackPlugin = require('copy-webpack-plugin')

module.exports = {
    configureWebpack: {
        plugins: [
            new CopyWebpackPlugin([
                {
                    from: path.join(__dirname, 'cloudfunctions'),
                    to: path.join(__dirname, 'unpackage/dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'cloudfunctions')
                }
            ])
        ]
    }
}
  1. 安装vue.config.js要用到的copy-webpack-plugin。如果项目根目录没有package.json文件,执行一下 npm init, 一路Enter。然后 执行 npm install --save copy-webpack-plugin(安装下来的版本有点高,编译会报错,我做了降级处理,改成了^4.1.2版本)
  2. 在manifest.json的视图源码中加上cloudfunctionRoot
/* 小程序特有相关 */
    ...
    "mp-weixin" : {
        "appid" : "wx57bc8e57fc6e6e0b",
        "setting" : {
            "urlCheck" : false
        },
        "usingComponents" : true,
        "cloudfunctionRoot" : "./cloudfunctions"
    },
    ...
  1. 进入cloudfunctions/public目录下, 执行 npm install

  2. HBuliderX 运行 > 运行到小程序模拟器 > 微信开发者工具。

  3. 在微信开发者工具中部署云函数,选中public文件夹,右键部署。


    image.png
  4. 云函数的权限我设置了允许所有用户访问。


    image.png
  5. 微信开发者工具 - 云开发 - 更多 - 静态网站,上传第1步中替换好的H5页面,会返回一个链接地址。

end

以上步骤,就完成了H5打开小程序的功能,在微信中点击第9步的链接,就能打开小程序了。在手机浏览器里访问第9步的链接,也会提示打开微信,然后打开小程序。

其它

wx.config中debug设置为true时,会提示noPermissionJsApi弹窗,然后我把debug设置为false就可以接着操作了。

你可能感兴趣的:(H5打开微信小程序)