5

我有一个运行 concat 和 uglify 的 Gruntfile,带有特定选项(即 mangle 顶级变量),然后我使用 sed 更新对 index.html 中缩小文件的引用。此解决方案有效,但由于 sed 的原因,它的可维护性不是很好。我试图改用 usemin,但我不知道如何使用 uglifyjs 的正确选项定义我自己的自定义步骤,并且 doco 缺少示例来做到这一点。我尝试使用我之前编写的相同的 uglify 任务:

   uglify: {
      options: {
        banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n',
        mangle: {
            except: ['$', 'd3'],
            toplevel: true
        }
      },
      build: {
        src: 'demo/js/<%= pkg.name %>.js',
        dest: 'demo/js/<%= pkg.name %>.min.js'
      }
    },
    useminPrepare : {
        html : 'src/index.html',
        options: {
            flow: {
                steps: {'js' : ['uglify'] }
            }
        }
    }

但我收到此错误:

Warning: Cannot find module 'path-to-module\node_modules\grunt-usemin\lib\config\uglify' Use --force to continue.

是否可以这样做,如果可以,我在这里做错了什么?

4

1 回答 1

7

尝试在您的流程选项中替换uglify为。uglifyjs

于 2013-11-05T16:23:15.750 回答