如何在grunt中更改项目的版本,但是从项目中的文件更改

时间:2018-04-11 16:34:58

标签: javascript gruntjs

在一个带有grunt的web项目中,如何配置我的gruntfile.js运行时,将index.html中的缓存项版本和.js和.css的标题应用于此处的更改版。例如:

我可能有:

... JS / last.js, JS / new.js ...

我跑,我想得到:

js / lastAndNew.js< - version 0.0.2

但可能我有: ... JS / last.js, JS / new1.js, JS / new2.js, JS / new3.js, JS / new4.js, JS / new5.js ...

我想得到,例如:

js / lastAndAllNews.js - >版本0.1.0(或者1.0.0我不知道它是如何工作的)

让grunt自动更改我项目中的版本,我在gruntfile.js代码中做了什么?

只有我得到了凹凸,将版本号1改为1。只需一个简单的配置。

1 个答案:

答案 0 :(得分:0)

我通常在我的grunt文件中做这样的事情..

将它放在grunt文件的顶部以从package.json读取版本,该版本将版本读入变量,递增它,然后更新package.json。如果您不想在每个构建上增加版本,只需使用第一行。

var pkg = grunt.file.readJSON('package.json');
pkg.version = pkg.version.split(".");
var subversion = pkg.version.pop();
subversion++;
pkg.version.push(subversion);
pkg.version = pkg.version.join(".");
grunt.file.write('package.json', JSON.stringify(pkg, null, 2));

然后,您可以使用它来使用首选任务定义页眉和页脚。

Here's an example我执行此操作的一个grunt文件。