1
下面的挖掘代碼應用了使用observable和computed observable跟蹤兩個文本框的值。第二個計算函數導致挖掘代碼中的錯誤
標記:
GBP:
<input type="textbox" data-bind="value: sendGbp" />
<br />
Exchange Rate: £1 GBP
<br />
<input type="textbox" data-bind="value: sendFx" />
的Javascript:
var transferItem = {
receiveCurrencyCode : "JPY",
exchangeRate : 123.223122
}
function viewModel(item) {
var self = this;
var initval = parseFloat(100).toFixed(2);
self.sendGbp = ko.observable(initval);
/** commented out error source
self.labelFxRate = ko.computed(function() {
return exchangeRate + " " + item.receiveCurrencyCode;
});
**/
self.sendFx = ko.computed({
read: function() {
return parseFloat(self.sendGbp() * item.exchangeRate).toFixed(2);
},
write: function (val) {
var valGbp = parseFloat(val);
self.sendGbp((valGbp/item.exchangeRate).toFixed(2));
}
});
}
ko.applyBindings(new viewModel(transferItem));
,直到我要添加另一個計算的可觀測顯示
這涉及到能正常工作,要註釋掉視圖模型節代碼並將此數據綁定標籤添加到標記中:
Exchange Rate: £1 GBP = <label data-bind="text: labelFxRate" />
但是,這會導致錯誤和標記無法呈現完全
什麼是應用第二計算變量,顯示從transferItem對象附加屬性的正確方法是什麼?
正在進行版本的全面工作,是的jsfiddle:http://jsfiddle.net/WuvZD/3/
回報EXCHANGERATE是,當我打得周圍的jsfiddle一個錯字。但是,是的 - 這是自動關閉標籤,這是錯誤!謝謝! – woodfly