0

我知道Ember.View.views[someId]要找到视图的“实例”。是否有类似的方法通过字符串值查找视图“类”?我有一种情况,列表中项目的值决定了哪个视图类被实例化并填充到容器视图中。

4

2 回答 2

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')
});

(在这里,为了更清楚,我在视图中对项目进行了别名)

然后,您需要与kinds 一样多的模板。例如:如果你有kind' 值 in [valid, invalid],你将有两个模板:valid_item_view.handlebars& invalid_item_view.handlebars

于 2012-08-03T08:59:37.387 回答
0
App = Ember.Application.create();

App.TestView = Ember.View.extend({ ... });

App["TestView"].create();

​</p>

于 2012-08-02T20:59:56.933 回答