Gulp-换行替代

Gulp-wrap Alternative

我有一个带有 gulp 工作流程的现有工作项目。一切 运行 都很好。我的 gulp 使用这个:

所以,我决定在我的团队的新项目中使用它。我将 gulpfile.jspackage.json 复制到新项目文件夹和 运行 npm install。一切都像往常一样下载。但是当我尝试 运行 我的 gulp 任务时,我遇到了这个错误:

TypeError: Object #<lib$es6$promise$promise$$Promise> has no method 'done'
at DestroyableTransform._transform (E:\www\myproject\node_modules\gulp-less\index.js:68:8)

经过一些测试发现问题实际上是由gulp-wrap引起的,可以通过以下方式解决:

  1. 从旧项目复制 gulp-wrap 文件夹并覆盖新项目
  2. 从 gulpfile.js
  3. 注释掉/删除所有 gulp-wrap 用法以及它的 require()

起初我以为是新版本问题导致的。所以,我在package.json中特别指定了版本。但是在运行和npm install之后,同样的问题出现了。

所以,当我查看我的 gulp 文件时,只有一处使用了 gulp-wrap.

wrap('(function(){"use strict"; <%= contents %>\n})();')

有什么方法可以不使用 gulp-wrap 进行包装来避免这个问题的发生吗?

经过一些研究,我发现 gulp-insert (https://github.com/rschmukler/gulp-insert) 也能完成这项工作,到目前为止我还没有遇到 gulp- 所面临的问题换行。

可以这样做:

.pipe(insert.wrap('(function(){"use strict";', '\n})();'))