1
我已經在我們的Web應用程序之外的幾個位置編寫了一個大型數據API,我想將knockout集成到應用程序中。它似乎與淘汰賽,你可以創建一個模型與observables。我無法想象的是觀察API中預先存在的值的一種方式。這是甚至可能的,還是我需要一箇中間模型來推動數據來回?這看起來非常不方便且效率低下。我錯過了明顯的東西嗎?Knockout.js觀察預先存在的API對象的成員
在下面的代碼中,我想觀察名稱屬性。我喜歡這裏最好的方法建議嗎?
編輯:該方法首選將觀察員附加到已有的屬性,而不是寫在圍繞敲除我的API或寫在API的頂部的一個額外的包裝。這個API與一些非瀏覽器應用程序共享,我認爲這消除了使用knockout編寫整個API而不增加額外複雜性的可能性。我願意考慮其他可以做我需要的框架。
myAPI.user = {
...
get name() {
return myAPI.user.object.name;
},
set name(x) {
myAPI.user.setProperty('name', x);
}
...
};
糾正我,如果我錯了,你告訴我valueHasMutated需要調用,如果名稱從外部來源更改。 – 2013-02-22 19:18:51
他說如果'myAPI.user.object.name'發生變化,就會調用它,以便Knockout將被通知更改。 – Pete 2013-02-22 19:24:44
@mikerobertking正確。 – 2013-02-22 19:25:09