2016-04-21 62 views
0

我必須將兩個ko.applyBindings();放在同一個函數中,但是系統會讓我回到運行時錯誤。 可以這樣做嗎?是否有可能把兩個ko.applyBindings()放在同一個函數中?

+0

目前尚不清楚「同一功能」中的含義,但是對於某些使用情況,可以這麼做。 –

+0

你能列舉一個列表和數組的例子嗎? –

+0

這更多的是一個奇怪的例子,你認爲你需要調用它兩次 - 你究竟想要做什麼?通常沒有必要。 –

回答

0

通常情況下,你創建一個viewModel對象,然後調用ko.applyBindings(viewModel)一次,像這樣:

var viewModel = { 
    personName: ko.observable('Bob'), 
    personAge: ko.observable(123) 
}; 

ko.applyBindings(myViewModel); 

也許這是你在找什麼?

或者,您可以傳遞第二個參數來定義要搜索數據綁定屬性的文檔的哪個部分。例如,ko.applyBindings(myViewModel, document.getElementById('someElementId'))。這將激活限制爲ID爲someElementId及其後代的元素,如果您想擁有多個視圖模型並將每個模型與頁面的不同區域相關聯,這非常有用。

從文檔​​。

至於你對管理列表和數組的評論,我不確定你的意思。他們聽起來和我一樣。淘汰賽有observable arrays,你可以使用。

+0

一個列表比較從foreach和數組到foreach –

+0

我已經解決了放入數組中的列表並調用它與myArray()[0] .nemeOfTheElement –

相關問題