【问题标题】:Grunt-uglify recursivelyGrunt-uglify 递归
【发布时间】:2014-06-13 05:57:13
【问题描述】:

我有一组包含一些 *.dev.js 文件的子文件夹。我需要 grunt 对目录树中的每个 .dev.js 文件进行 uglify 并在源文件旁边创建 uglified 文件。 这是我尝试的方法:

uglify: {
  options: {
    banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
  },
  dist: {
    files: {
      src: '/folder/**/*.dev.js',
      ext: '.js',
      flatten: true,
      expand: true
    }
  }
}

但这会报错:

运行“uglify:dist”(uglify)任务 创建的文件 src:13.49 kB → 5.62 kB

目标分机未写入,因为 src 文件为空。 警告:对象 true 没有方法 'indexOf' 使用 --force 继续。

【问题讨论】:

    标签: javascript gruntjs uglifyjs grunt-contrib-uglify


    【解决方案1】:

    我看到你的问题是因为我有同样的问题,看到这个的其他人(比如我)的答案是:

    • 您正在使用“src: '/folder/**/*.dev.js'”
    • 错误出现在第一个斜杠 (/folder) 中,grunt/nodejs 正在查看驱动器根目录中的文件夹“文件夹”而不是应用程序根目录(例如 c:\folder 或 OSX\folder)。
    • 解决方法是去掉第一个斜杠或者在斜杠“.\folder”前加一个点,完整的解决方案应该是:

      uglify: {
        options: {
          banner: '/*! <%= pkg.name %> <%= grunt.template.today("dd-mm-yyyy") %> */\n'
        },
        dist: {
          files: [{
            src: './folder/**/*.dev.js',
            ext: '.js',
            flatten: true,
            expand: true
          }]
        }
      }
      

    另外,不要问我为什么我在 1 小时前才了解 grunt,你需要但是 javascript 数组 [{ }] 中的文件值(不仅仅是花括号),隔离“文件”对象看起来像这样:

        files: [{
          src: './folder/**/*.dev.js',
          ext: '.js',
          flatten: true,
          expand: true
        }]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-28
      • 2018-11-27
      • 2014-09-24
      • 1970-01-01
      • 1970-01-01
      • 2014-11-03
      • 1970-01-01
      相关资源
      最近更新 更多