我正在使用grunt-ember-templates进行Handlebars模板的预编译。脚本按以下顺序进行:
<script src="//cdnjs.cloudflare.com/ajax/libs/handlebars.js/1.3.0/handlebars.runtime.min.js"></script>
<script src="/js/ember.min.js"></script>
<script src="/js/app.js"></script>
<script src="/build/templates.js"></script>
<script src="/js/router.js"></script>
.....
在templates.js
:
define(["ember"], function(Ember){
Ember.TEMPLATES["index"] = Ember.Handlebars.template(functionanonymous(Handlebars,depth0,helpers,partials,data) {
this.compilerInfo = [4,'>= 1.0.0'];
helpers = this.merge(helpers, Ember.Handlebars.helpers);
data = data || {};
var buffer = '', stack1, escapeExpression=this.escapeExpression, self=this;
function program1(depth0,data) {
var buffer = '';
...
.....
return buffer;
});
现在,我得到这个Uncaught ReferenceError: define is not defined
错误是指define(["ember"], function(Ember){
。我究竟做错了什么?
amd
在您的配置中设置为false:
emberTemplates: {
compile: {
options: {
amd: false,
templateBasePath: /path\/to\//
},
files: {
"path/to/result.js": "path/to/source.handlebars",
"path/to/another.js": ["path/to/sources/*.handlebars", "path/to/more/*.handlebars"]
}
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句