您的位置:首页 > 教育 > 锐评 > vue打包更新packge.json版本号

vue打包更新packge.json版本号

2024/10/6 6:01:02 来源:https://blog.csdn.net/qq_52132550/article/details/141132553  浏览:    关键词: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 后自动更新versionlastBuildTime
在这里插入图片描述

四、在页面地方使用

在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com