在Ember.js的版本0.9.3
中,我可以这样做:
Item = Ember.Object.Extend({
title: 'A cool item',
subview: Ember.View.extend({
templateName: 'views_items_show'
})
});
var item = Item.create(jsonData);
var itemIndexView = Ember.View.extend({
templateName: 'views_items_index',
item: item
});
itemIndexView.appendTo('body');
然后,在我的itemIndexView
视图模板中:
<div class="some-class">
<p>{{item.title}}</p>
<div>
{{view item.subview}}
</div>
</div>
然后,如果我更新itemIndexView
:
itemIndexView.set('item', newItem);
在Ember 0.9.3中{{view item.subview}}
会自动使用新视图进行更新。这在0.9.5中不起作用。现在有不同的方法吗?
答案 0 :(得分:5)
在处理动态内容时,您应该使用Ember.ContainerView
。
以下是一个工作示例,由您的代码重构:http://jsfiddle.net/MikeAski/d6JD8/1/