将计算属性添加到选择提示符

时间:2015-07-02 10:37:37

标签: ember.js

我想提示一个提示,其中包含"所有产品(500)"。 500是可用产品的总数。 prompt="All products {{filteredProductsCount}}"无效。

我需要更改哪些内容才能将filteredProductsCount的值添加到提示符中?

controller.js

filteredProductsCount: function() {
  var filteredProducts = this.get('filteredProducts');
  return filteredProducts.length;
}.property('filteredProducts')

template.hbs

{{view "select" prompt="All products"
       content=filteredProducts
       value=selectedProduct
       class="form-control"}}

1 个答案:

答案 0 :(得分:1)

您也可以将提示字符串作为计算属性:

promptText: computed('filteredProductsCount', function() {
  // If you are using ES6
  return `All products ${this.get('filteredProductsCount')}`;
  // If not
  return 'All products ' + this.get('filteredProductsCount');
})

在你的模板中:

{{view "select" prompt=promptText
       content=filteredProducts
       value=selectedProduct
       class="form-control"}}

您需要注意的一些事项是,.property()语法被弃用,而不是Ember.computed,而且视图在ember 2.0中消失,请Future proofing Ember读取。