0

如果你看看我的问题简史,我似乎已经建立了提出简单问题的声誉,我应该在浪费人们的时间之前找到自己的答案。有了这个,虽然我真的很难过,我会非常感谢一些帮助,所以这里......

  1. 我有一个多选列表(最终将使用 jquery 插件使其更漂亮),它将根据一些用户标准进行填充(在我的示例中,选项是硬编码的,但一个示例是 13 岁不应该能够在我的游戏商店中查看评级为“成熟”的游戏)。
  2. 基于一些搜索条件(假设我们正在按发行商、特定国家/地区的可用游戏等进行搜索)。每个多选项目的计数应随着搜索条件的变化和计数的变化而更新。(在我的示例中,我只是用计时器更改了一个值)

这是小提琴,http://jsfiddle.net/AMPBb/1/

似乎有几种方法可以解决这个问题,比如我的 SelectListItem 上的 countBinding 和 displayText 计算属性,但我实际上无法完成一个工作示例。计数变化的第一个选项非常骇人听闻,但演示了我所期望的功能。我以前没有遇到过这样的例子,所以我很想看看解决这个问题的最佳方法应该是什么。

提前感谢您的帮助。

4

1 回答 1

1

我会label在你的上面创建一个计算属性,App.SelectListItem定义如下,请参阅http://jsfiddle.net/pangratz666/Y6467/

label: function() {
    var text = this.get('text');
    var value = this.get('value');
    return '%@ (%@)'.fmt(text, value);
}.property('text', 'value').cacheable()

另请注意,您必须在App.SelectListItem.

关于命名约定的另一件事:具体实例应该在 中命名lowerCase,所以它是App.countModel. 请参阅http://www.emberist.com/2012/04/09/naming-conventions.html

于 2012-05-15T21:33:16.787 回答