第一步:在package.json 文件中新增一行代码如下
"buildVer": "node up-version"
第二步:在项目根目录中新增一个文件,如下图
第三步:将以下代码,粘贴到 index.js文件中
// 运行这个指令打包并设置版本号
// npm run buildVer --setv=0.1.1
// 获取npm的环境变量
const version = process.env.npm_config_setv
// 导入fs插件,项目中带有,如果不存在自行下载
const fs = require('fs')
// 导入 path 模块,项目中自带
const path = require('path')
// 获取 package.json 文件路径
const url = path.join(process.cwd(), './package.json')
// 读取 package.json 文件
const package = fs.readFileSync(url, 'utf-8')
// 获取项目中的子进程
const { exec } = require('child_process')
// 捕获,防止报错
try {
// 将 package.json 文件转换成对象,默认是 json 格式
const json = JSON.parse(package)
// 将命令执行的版本号覆盖之前的版本号
json.version = version
// 将 package.json 重新写回 package.json 文件,
fs.writeFileSync(url, JSON.stringify(json, null, 2))
// 执行 子进程命令,开始打包
const build = exec('npm run build')
// 将打包信息,打印到控制台
build.stdout.on('data', (chunk) => {
console.log(chunk);
})
} catch(e) {
// 打印错误信息
console.log("__文件错误__", e);
}