我的范围是以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
答案 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