Ember导入值和计算功能

时间:2018-01-29 17:59:12

标签: function ember.js components

我的范围是以span为单位显示currentValue。我正在尝试将此值导入计算函数,进行计算并返回。 我堆积在计算中。

range.hbs

Dict

range.js

<input
type="range"
onchange={{action 'valueChanged' value='target.value'}}
class="form-control"
value="{{currentValue}}" <!-- this value i get from outside, it's 50 and range shows 50 too -->
min="1"
max="99"
id="rangeValue"

/>

<span class="tag tag-pill tag-info">
   {{currentValue}}% - {{deltaValue}}%
</span>
来自deltaValue的

我需要得到50而不是100

1 个答案:

答案 0 :(得分:0)

以下是两种可能的解决方案:

a。)您将初始值传递给函数

{{input-range-component
  currentValue=50
}}

b。)您在钩子中设置初始值

export default FormComponent.extend({
  didReceiveAttrs(){
    this.set('currentValue', 50);
  }

  deltaValue: computed('currentValue', function() {
    var newValue = 100 - this.get('currentValue');  
    console.log(newValue)
    // output in console: 100
  })
});

这个钩子的优点是它总是被调用,初始值将被设置为你想要的。

确保您确实设置了组件的属性currentValue