gulp rename认为.min.js是扩展名

时间:2018-02-14 10:08:11

标签: gulp gulp-rename

在gulp任务中,我想包含一个javascript文件并在文件名中插入版本。

基本上,在我的任务中,我想要复制:

  • - hosts: all environment: GIT_SSL_NO_VERIFY: 'true' roles: - role: cchurch.scm ... ./node_modules/bootstrap-sass/assets/javascripts/bootstrap.js
  • ./dist/js/bootstrap.3.3.7.js./node_modules/bootstrap-sass/assets/javascripts/bootstrap.min.js

我定义了这个任务:

./dist/js/bootstrap.3.3.7.min.js

但是,生成的文件名是:

  • bootstrap.3.3.7.js(正确)
  • bootstrap.min.3.3.7.js(不正确,min在版本号之前)。

如何编写我的任务以输出正确的文件名?

1 个答案:

答案 0 :(得分:2)

尝试重命名管道:

.pipe(rename(function (file) {

      if (file.basename.endsWith(".min")) {
        file.basename = file.basename.slice(0, -4) + "." + bsInfo.version + ".min";
      }
      else {
        file.basename += "." + bsInfo.version;
      }
   }))