0

我有一个类似于以下内容的文件夹结构

build/
  dist/
    app/
      js/
        third-party/
          jquery.min.js
        js-file1.js
        js-file2.js
    view/
      js/
        js-file.js
        js-file4.js

我想做的是使用 uglify 单独缩小所有 JS 文件(同时忽略第三方 javascript 文件),而不使用 grunt-contrib-uglify 将它们全部捆绑到一个文件中并覆盖相应的文件。所以本质上,如果原始文件是build/dist/app/js/js-file1.js,在我运行 grunt 任务之后,它仍然在build/dist/app/js/js-file1.js但缩小了。

该任务如下所示:

uglify: {
  options: {
    mangle: false,
    preserveComments: false
  },
  files: [{
    expand: true,     // Enable dynamic expansion.
    cwd: 'build/dist/',      // Src matches are relative to this path.
    src: ['**/*.js', '!**/thirdparty/*'], // Actual pattern(s) to match.
    dest: 'build/dist/',   // Destination path prefix.
    ext: '.js',   // Dest filepaths will have this extension.
    extDot: 'first'   // Extensions in filenames begin after the first dot
  }]
}

当我运行任务时,我收到以下错误,我不确定我做错了什么。

(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.
(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.

util.js:35
  var str = String(f).replace(formatRegExp, function(x) {
                      ^
RangeError: Maximum call stack size exceeded

想法?

4

0 回答 0