vue打包更新packge.json版本号的全过程
作者:心肝到爆
这篇文章主要介绍了vue打包更新packge.json版本号的全过程,文章通过图文结合的方式给大家讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
VUE项目打包自动更新版本号
此方法只针对 Vue
如果使用其他框架,可以此参照作为参考
一、先看效果
二、创建 buildVersion.js 文件
文件内容 目前只针对3位版本号
递增规则是 每次更新 加一次小版本,10次小版本向前递增一个版本。如:1.0.9
递增后 1.1.0
let fs = require("fs"); const getPackageJson = () => { // 读取文件 let data = fs.readFileSync("./package.json"); // 转换为 JSON 对象 return JSON.parse(data); }; let packageData = getPackageJson(); const updateVersion = () => { let version = packageData.version.split("."); let major = parseInt(version[0]); // 主版本号 let minor = parseInt(version[1]); // 次版本号 let patch = parseInt(version[2]); // 小版本号 // 检查并更新版本号 if (patch < 9) { patch++; // 递增小版本号 } else { patch = 0; // 重置小版本号 if (minor < 9) { minor++; // 递增次版本号 } else { minor = 0; // 重置次版本号 major++; // 递增主版本号 } } // 更新版本号 packageData.version = `${major}.${minor}.${patch}`; // 获取当前日期和时间 let now = new Date(); let formattedDate = `${now.getFullYear()}-${String( now.getMonth() + 1 ).padStart(2, "0")}-${String(now.getDate()).padStart(2, "0")} ${String( now.getHours() ).padStart(2, "0")}:${String(now.getMinutes()).padStart(2, "0")}:${String( now.getSeconds() ).padStart(2, "0")}`; // 更新最后打包时间 packageData.lastBuildTime = formattedDate; }; updateVersion(); fs.writeFile( "./package.json", JSON.stringify(packageData, null, "\t"), (err) => { if (err) { console.log("写入版本失败", err); } else { console.log("写入版本成功 " + packageData.version); } } );
三、修改packjson里面,scripts命令
"scripts": { "dev": "vue-cli-service serve", "build:prod": "node ./buildVersion.js && vue-cli-service build" }
执行npm run build:prod
后自动更新version
和lastBuildTime
四、在页面地方使用
到此这篇关于vue打包更新packge.json版本号的全过程的文章就介绍到这了,更多相关vue打包更新packge.json版本号内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!