【问题标题】:How to uglify all javascript files in subfolders/subdirectory using Grunt?如何使用 Grunt 丑化子文件夹/子目录中的所有 javascript 文件?
【发布时间】:2016-09-02 08:21:18
【问题描述】:

我正在使用Grunt 对我的项目中的 javascipt 文件进行 uglify。

问题:

如何对子文件夹/子目录中的所有javascript文件进行uglify?

我在 Gruntfile.js 中做了什么

目前它只会对 js 文件夹中的那些 javascript 文件进行 uglify,因为我使用的是 src: 'js/*.js'。但是我在 js 文件夹中有其他目录,其中包含 javascript 文件:

├── CommonUtil.js
├── Paging
│   ├── dirPagination.js
│   └── dirPagination.tpl.html
├── angular-chart.js
├── angular-elastic-input.min.js
├── angularAlt.js
├── authenticationChallengeHandler
│   └── loginChallengeHandler.js

Gruntfile.js

module.exports = function (grunt) {
    grunt.initConfig({
        // define source files and their destinations
        uglify: {
            files: { 
                src: 'js/*.js',  // source files mask
                dest: 'jsm/',    // destination folder
                expand: true,    // allow dynamic building
                flatten: true,   // remove all unnecessary nesting
                ext: '.min.js'   // replace .js to .min.js
            }
        },
        watch: {
            js:  { files: 'js/*.js', tasks: [ 'uglify' ] },
        }
    });

// load plugins
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-uglify');

// register at least this one task
grunt.registerTask('default', [ 'uglify' ]);


};

【问题讨论】:

标签: javascript gruntjs uglifyjs


【解决方案1】:

您可以使用全局模式,例如:src: '/**/*.js'

【讨论】:

  • 感谢回复.. 我已经用 scr: '*/.js' 修改了我的 Guntfile.js,但是,我在运行 grunt 后遇到了这个错误终点站。 JS_Parse_Error { message: 'SyntaxError: Unexpected token: punc (.)', filename: '../*.js', line: 1, col: 0, pos: 0, stack:
  • 您需要提及一个根文件夹。你能像提到的那样试试/**/*.js吗?
  • 点击这个:致命错误:CALL_AND_RETRY_LAST 分配失败 - JavaScript 堆内存不足,但我认为你的答案应该有效......
  • 啊,这意味着有一些内存泄漏,您需要查看您的代码,看看是什么原因造成的。某些东西可能在无限循环中运行,导致 JS 堆内存不足
  • 打开 --verbose 日志,无论是控制台还是日志文件,它可能会告诉您哪些 .js 文件有错误以及如何修复它们。
猜你喜欢
  • 1970-01-01
  • 2011-10-30
  • 2013-02-28
  • 2019-05-13
  • 2010-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多