我知道Ember.View.views[someId]
找到了视图的“实例”。是否有类似的方法通过字符串值查找View“类”?我有一种情况,列表中的项的值确定实例化哪个视图类并填充到容器视图中。
答案 0 :(得分:1)
你真的需要切换视图类,因为渲染肯定会基于项目的状态吗?
我宁愿让视图的模板有条件,如下所示:
App.ItemView = Ember.View.extend({
itemBinding: 'controller.content',
templateName: function () {
var kind = this.get('item.kind');
return '%@_item_view'.fmt(kind);
}.property('item.kind')
});
(在这里,为了更清晰,我在视图中别名该项目)
然后,您需要尽可能多的模板kind
。
例如:如果您在kind
中拥有[valid, invalid]
的值,则会有两个模板:valid_item_view.handlebars
& invalid_item_view.handlebars
。
答案 1 :(得分:0)
App = Ember.Application.create();
App.TestView = Ember.View.extend({ ... });
App["TestView"].create();