我正在尝试将我的数据模型绑定到 Ember.js 中的文本字段。该模型有一个表示货币值的字段(例如,1,000.50 美元)。然后用户可以更改此值。
Ember 以数字 (1000.50) 形式接收数据 - 不是货币格式。我将视图绑定到具有良好格式的计算属性。这是我的把手模板。
{{input classNames="amount" valueBinding="p.amountFmt"}}</td>
我的模型看起来像:
App.Product = Ember.Object.extend({
amount : 0.00,
amountFmt: function () {
//example. Do actual formatting with this.get('amount');
var formattedNum = '1,000.50';
return formattedNum;
}.property('amount')
});
问题是,当用户更改输入字段中的金额时,我的模型上的基础“金额”属性不会更新 - 我想是因为它绑定到计算属性。
获取用户输入、解析和验证(如有必要)并将其存储在“金额”属性中的正确方法是什么?我应该在两个属性之间使用绑定/观察者吗?这将如何工作?
最终,'amount' 属性是 get 的持久服务器端。我真的只是将计算属性视为进行 UI 格式化的地方。对于这种格式,我通常会使用 Handlebars 助手,但您不能将 TextField 的 valueBinding 与 Handlebars 助手的结果结合起来。
在此先感谢您的帮助!安德鲁