用于网站建设的图片,广西桂林电子科技大学,做羞羞的事情的网站,湖北省建设厅官方网站文件VUE项目打包自动更新版本号 此方法只针对 Vue 如果使用其他框架#xff0c;可以此参照作为参考
一、先看效果 二、创建 buildVersion.js 文件 文件内容 目前只针对3位版本号 递增规则是 每次更新 加一次小版本#xff0c;10次小版本向前递增一个版本。如#xff1a;1.0.9 递…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
四、在页面地方使用