如何将文件名/选项传递给Grunt minifyify

时间:2015-11-09 09:21:42

标签: javascript gruntjs browserify source-maps grunt-browserify

我正在使用minifyify推荐的this answer插件,但在与Grunt一起使用时,似乎无法找到任何方法将标记/选项传递给它。

以下是我的Gruntfile的相关部分:

grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    browserify: {
        options: {
            browserifyOptions: {
                debug: true
            },
            exclude: [/*...all vendor packages...*/],
            transform: [
                'brfs',
                'debowerify',
                'deamdify'
            ]
        },
        app: {
            files: [{
                expand: true,
                cwd: 'web/resources/js',
                src: '**/*.js',
                dest: 'web/assets/js',
                ext: '.min.js',
                extDot: 'last'
            }],
            options: {
                plugin: ['minifyify']
            }
        }
    }
});

编译的文件附加到//# sourceMappingURL=bundle.map,这是不正确的。此外,映射文件不会写入磁盘或根本不生成。

如何传递选项以使sourceMappingURL与文件名相同?例如:

  • /web/assets/js/foo.min.js - > /web/assets/js/foo.js.map
  • /web/assets/js/bar.min.js - > /web/assets/js/bar.js.map
  • 等......

1 个答案:

答案 0 :(得分:2)

如果将转换作为名为第一项的数组传递,并将options-object作为第二项传递,则可以将选项传递给grunt-browserify插件/转换:

plugin: [['minifyify', {your: 'options'}]]

对于转换选项,请在此处记录:https://github.com/jmreidy/grunt-browserify#transform

对于插件选项没有文档,但它们的工作方式基本相同(请参阅lib/runner.js,并搜索options.plugin