uniapp中自动打包微信小程序后自动上传代码
npm工具
npm i miniprogram-ci -D
需要的提前做的:
小程序后台开发设置里面启用小程序代码上传,下载密匙文件放到项目里,添加ip白名单,此处是公网白名单
添加脚本命令
"upload": "npm run build:mp-weixin && node autoUpload.js",
//我创建在了根目录,执行命令需要注意文件所在位置,此处命令的意思是,打包并且执行上传代码
创建文件
autoUpload.js
代码示例(我自己的小程序)
const ci = require('miniprogram-ci')
const path = require('path')
const mainfest = require('./src/manifest.json') //可有可无,用到一些项目描述
(async () => {
const project = new ci.Project({
appid: 'wx6b49ede83038818e',//appid
type: 'miniProgram',
projectPath: path.resolve(__dirname, './dist/build/mp-weixin'), //项目路径
privateKeyPath: path.resolve(__dirname, './private.wx6b49ede83038818e.key'), //小程序后台的上传密匙
ignores: ['node_modules/**/*'],
})
const uploadResult = await ci.upload({
project,
version: mainfest.versionName,
desc: mainfest.description,
setting: mainfest['mp-weixin'].setting,
onProgressUpdate: console.log,
}).then(res => {
console.log(`版本${mainfest.versionName}`)
}).catch(error => {
throw error
})
})()