5

concat を実行し、特定のオプション (マングルのトップレベル変数) を使用して uglify を実行する Gruntfile があり、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 に答える