我仍然不太清楚ii如何使用Ember中的Select选项值进行操作
这是我希望在输入值和选择选项值
之间实现的非常简单的moltiplication我的代码如下:
我的输入数量:{{input valueBinding=quantity}}
我选择的选项值为{{view Ember.Select prompt="Tariffa" value=selectContentTariffa.value content=controller.selectContentTariffa optionValuePath="content.value" optionLabelPath="content.label"}}
我的输入总数,我想在数量和所选票价之间显示moltiplication结果:
{{view "total"}}
<script type="text/x-handlebars" data-template-name="total">
{{view.total valueBinding=total}}
</script>
这是我设置moltiplication的视图
App.TotalView = Ember.View.extend({
templateName: 'total',
tagName: 'input',
attributeBindings: ['total:value', 'placeholder', 'type'],
placeholder: null,
type: 'number',
total: (function() {
var res= parseInt(this.get('selectContentTariffa.value')) * parseInt(this.get('quantity'));
return isNaN(res)?"":res;
}).property('selectContentTariffa.value', 'quantity')
});
我在设置值this.get('selectContentTariffa.value')) or this.get('quantity'))
时做错了吗?
或者我正在犯其他错误?
我在这里复制了case
答案 0 :(得分:2)
您似乎对如何以及在何处定义和访问属性感到困惑。 Here是您案例的工作更新。关键错误是你的选择值绑定。你有这个:
value=selectContentTariffa.value
我把它更改为:
value=controller.tariffa
值绑定告诉Ember存储所选值的位置。这会在控制器上设置tariffa
。在total
computed属性中,您可以像这样访问值:
this.get('controller.tariffa')
同样适用于quantity
。