将选择行为添加到Ember.js CollectionView的推荐方法是什么?

时间:2012-12-18 18:27:45

标签: ember.js

我基本上需要一个选择视图,但我想要一些更具视觉吸引力的东西。我的预感是我可以使用CollectionView来做到这一点,但我必须自己在集合中实现元素的选择。这是一种常见做法吗?有推荐的方法吗?有没有好的例子?

2 个答案:

答案 0 :(得分:1)

假设我正确地读了这个,你只想要比你的基本选择列表漂亮的东西。我不知道你的约束,但我真的很喜欢bootstrap dropdowns这些类型的东西

简单:尝试根据自己的喜好设计<select>

{{view Ember.Select 
    contentBinding="App.content" 
    optionLabelBinding="content.text"
    optionValueBinding="content.value"
    selectionBinding="App.selection"
    prompt="Choose ...."}}

如果你使用Bootstrap,这样的东西应该可以工作

<div class="dropdown">
  <a class="dropdown-toggle" data-toggle="dropdown" href="#">Dropdown trigger</a>
  <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel">
  {{#each App.content}}
      {{#view App.SelectView contentBinding="this"}}{{label}}{{/view}}
  {{/each}}
  </ul>
</div>

使用Javascript:

App.SelectView = Em.View.extend({
   tagName: 'li',
   click:function(){
      App.set('selected', this.get('content'));
      // then hide the dropdown
   }
});

答案 1 :(得分:0)

我在Freenode上的#emberjs上推荐了这个链接:

https://gist.github.com/1626943

它扩展了CollectionView以允许选择项目。