我想首先说这是我的第一个使用grunt的项目,如果我遗漏了一些微不足道的话,我道歉。 我目前正在尝试清理我的代码并决定将我的handlebars模板从我的index.html文件中移出并放入他们自己的文件中。我也想尝试预编译这些文件。由于我已经在使用grunt,grunt-contrib-handlebars看起来就像是要走的路。
按照以下说明操作:https://github.com/gruntjs/grunt-contrib-handlebars我使用以下命令安装了grunt-contrib-handlebars:
npm install grunt-contrib-handlebars --save-dev
我还在gruntfile中添加了以下代码:
...
handlebars: {
compile: {
files: {
'<%= config.app %>/scripts/templates/handlebarTemplates.js': '<%= config.app %>/scripts/templates{,*/}*.hbs'
}
}
}
});
grunt.task.loadNpmTasks('grunt-contrib-handlebars');
...
我目前使用以下方法编译模板:
grunt handlebars
这成功生成了handlebarTemplates.js文件。但是,当我运行网页时出现此错误:
Uncaught TypeError: Cannot read property 'JST' of undefined
在handlebarTemplates.js的第1行:
this["JST"] = this["JST"] || {};
我错过了一些初始化步骤吗?
我无法在网上找到任何关于此的讨论,因此我认为我遗漏了一些明显的东西。任何投入将不胜感激。
额外信息:
我创建了我的项目/我的gruntfile是使用yeoman生成的。
如果您需要更多代码,请与我们联系。我不想用不必要的代码重载我的帖子。