vue打包项目版本号自加

  • vue打包项目版本号自加已关闭评论
  • 147 次浏览
  • A+
所属分类:Web前端
摘要

项目每次打包后都需要改动项目版本号,这个改动每次都需要在package.json中修改version,比较麻烦,到底有没有一种打包后版本号自加的办法。


原因

项目每次打包后都需要改动项目版本号,这个改动每次都需要在package.json中修改version,比较麻烦,到底有没有一种打包后版本号自加的办法。

方案

版本号自加其实可以使用fs修改文件来实现的。
具体思路是:在执行打包命令npm run build时,同时执行一段js代码,该代码通过调用fs来自加修改package.json中的version,然后再进行打包操作。

步骤

1、在package.json中将scripts中的打包命令修改为如下:
vue打包项目版本号自加
2、在src下创建addVersion.js:
vue打包项目版本号自加
3、在addVersion.js中写入下面内容,打包时使用fs修改package.json:

//npm run build打包前执行此段代码 let fs = require('fs');  //返回package的json数据 function getPackageJson() {   let data = fs.readFileSync('./package.json');//fs读取文件   return JSON.parse(data);//转换为json对象 }  let packageData = getPackageJson();//获取package的json let arr = packageData.version.split('.');//切割后的版本号数组 arr[2] = parseInt(arr[2]) + 1; packageData.version = arr.join('.');//转换为以"."分割的字符串 //用packageData覆盖package.json内容 fs.writeFile(   './package.json',   JSON.stringify(packageData, null, "t"   ),   (err) => { } ); 

4、最后执行打包命令:npm run build便会发现package.json中的版本号变化了。