使用node-undercorify时未定义_

时间:2014-09-15 17:57:47

标签: javascript gruntjs underscore.js browserify

我正在尝试使用与Grunt的node-undercorify将HTML模板编译为Underscore将接受的格式。

我的gruntfile看起来像这样:

browserify: {
        standalone: {
            src: ['<%= config.main %>/*/*.js'],
            dest: '<%= config.dist %>/js/<%= pkg.name %>.standalone.js',
            options: {
                standalone: '<%= pkg.name %>',
                transform: ['node-underscorify'],
                debug: true,
                external: ['jquery', 'underscore', 'backbone.marionette']
            }
        },

一直运行良好,直到我尝试在HTML模板中使用Underscore方法。例如,尝试调用_.each会导致&#34; _未定义&#34;错误。根据{{​​3}},可以传入require选项,例如:

requires:[{variable: '_', module: 'underscore'}]}

如何正确设置node-undercorify以使用Grunt,以便我可以在HTML模板中使用下划线方法(或查看助手等)?

1 个答案:

答案 0 :(得分:3)

虽然在文档中有第二次看,但它应该是非常明显的。我认为它不能像那样工作。相反,你应该在你的代码中调用类似的东西。

document.body.innerHTML = template({message: "Hello Node Underscorify!", _: require('underscore')});