我正在学习 ember,我有一个问题:我应该将模板文件放在哪里?假设我正在使用 requirejs 来模块化我的应用程序。如果我index.html
在入门套件中定义我的 as:
<script type="text/x-handlebars">
<h2>Welcome to Ember.js</h2>
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="index">
<ul>
{{#each item in model}}
<li>{{item}}</li>
{{/each}}
</ul>
</script>
我的应用程序正常工作。但是,如果我想将index
模板移动到项目中的另一个文件中,比如说js/templates/index.html
. 我如何告诉 ember,模板在那个目录中?在这种情况下我必须使用视图吗?有renderTemplate
Route的方法,但是不知道怎么告诉它从目录中取出模板:
define(['ember','text!templates/index.html'],function(ember, indexTemplate){
var IndexRoute = Ember.Route.extend({
renderTemplate: function(){
this.render(indexTemplate); // clearly this is not the solution, I just don't know how to refer to the indexTemplate.
},
model: function(){
return ['red','blue','yellow'];
}
});
return IndexRoute;
});
由于该renderTemplate
方法等待一个字符串来确定要呈现的模板的名称,所以我不知道如何告诉 ember,该模板实际上在另一个文件中,而不是在应用程序index.html
的templates/index.html
.