案例 I. 将模板绑定到视图实例。
例如,假设我有一个模板:
<script type="text/x-handlebars" data-template-name="instance-template">
<b> Name: </b> {{ name }}
</script>
然后,我可以将视图实例绑定到它并附加到文档(为简单起见,参数名称在视图中声明,而不是绑定到某些控制层):
App.instanceView = Ember.View.create({
templateName: 'instance-template',
name: 'hello world'
}).append();
这里的幕后究竟发生了什么?通过指定模板名称,这个视图实例是否以某种方式获取模板并使用后台传递的参数对其进行编译?
案例二。将模板绑定到类视图,模板未命名。
但是,如果我想将模板绑定到类视图,例如:
App.ViewClass = Ember.View.extend({
name: 'hello world',
});
该文档使用这种形式的模板:
<script type="text/x-handlebars">
{{ #view App.ClassView }}
This part renders: {{ name }}
{{ /view }}
</script>
请注意,当我这样做时,由于某种原因这不起作用。模板中的引号 'This part renders: ' 实际呈现,但 {{ name }} 标签未呈现。我不知道为什么。
案例三。模板绑定到类视图,模板被命名。
另外,如果我命名上面的模板:
<script type="text/x-handlebars" data-template-name = 'class-template'>
{{ #view App.ClassView }}
This part renders: {{ name }}
{{ /view }}
</script>
并将视图更改为
App.ViewClass = Ember.View.extend({
templateName: 'class-template',
name: 'hello world',
});
什么都没有渲染。我再一次看不到这里发生了什么。