我有一個ViewModel,它是一個可觀察的對象數組,它包含我將使用foreach
輸出的聯繫人信息。我需要有一個計算的觀測值依賴於firstName
和每個聯繫人的lastName
:knockoutjs - 可觀察數組內部的可觀測值
var contacts = ko.observableArray([
{
firstName: ko.observable("Jim"),
lastName: ko.observable("Carrey"),
fullName: ko.computed(function(){
return this.firstName() + " " + this.lastName();
}, this),
image: ko.observable("images/jim.jpg"),
phones: ko.observableArray([
{type: ko.observable("Mobile"), number: ko.observable("(555) 121-2121")},
{type: ko.observable("Home"), number: ko.observable("(555) 123-4567")}
])
},
...//other objects of the same structure
]);
ko.applyBindings(contacts);
,但我得到這個錯誤Uncaught TypeError: Object #<HTMLDocument> has no method 'firstName'
。有人可以解釋爲什麼我對this.firstName()的引用失敗嗎?謝謝。
你能把小提琴嗎? – DevelopmentIsMyPassion
http://jsfiddle.net/arrustamyan/kD83g/ –
在obs數組內使用計算函數的任何原因? – DevelopmentIsMyPassion