我是淘汰賽的初學者,我必須說我經常對何時使用()
感到困惑。有沒有關於何時使用()
的一般提示/技巧,因爲目前我只是在進行反覆試驗。如果綁定拋出錯誤或不更新值,我刪除()
否則我把。什麼時候應該在淘汰賽中使用括號
回答
在使用observables或執行任何其他方法時,您可以使用()
進行挖空。 Knockout observables是函數,用於返回您要查找的內容或允許您分配新值。
在淘汰賽中,您使用object.property()
檢索值,並使用object.property(newValue)
爲該屬性分配一個值。
在淘汰賽website結帳的文件,特別是在observables,這表明你在查詢和寫observables時使用()
。
報價:
var myViewModel = {
personName: ko.observable('Bob'),
personAge: ko.observable(123)
};
要讀取觀察到的電流值,只需調用觀察到的不帶參數。在這個例子中,myViewModel.personName()將 回報「鮑勃」,和myViewModel.personAge()將返回123
要編寫一個新值觀察的,叫觀察到的,並將新的值作爲參數。例如,調用 myViewModel.personName('Mary')將名稱值更改爲'Mary'。
要將值寫入模型對象上的多個可觀察屬性,可以使用鏈接語法。例如, myViewModel.personName(「瑪麗」)。人物(50)將更改名稱 值「瑪麗」和時代價值50
淘汰賽的interactive tutorial也相當不錯,非常值得一試。
基本上每當您使用可觀察值(數組或其他)時,您應該使用圓括號來獲取值並設置值。
var something = ko.obserbable();
something(5); //set value
console.log(something()); //get value: 5
原因是,大多數JS實現不支持的屬性getter和setter還,所以觀測得到實施這樣來解決這個限制。
我覺得現有的答案跳過了一個非常重要的混淆點:data-bind
屬性。
確實,當你使用Javascript時,使用parens並獲取或設置observables。但是當你寫data-bind="text: property"
時,即使在使用可觀察物品時,也可以省去零件。
編輯
如在下面的評論,綁定是表達式或observbles的訪問屬性指出,需要括號
visible: personName().length > 0
visible: person().Name().length > 0
visible: person().isVisible
注意最後一個person
和isVisisble
都是觀測,但最後的屬性不使用parens!原因是我們將傳遞一個值到binding而不是observable,並且它不會更新。
- 1. 淘汰賽由淘汰賽
- 2. 什麼時候應該在U-SQL中使用方括號?
- 3. 什麼時候應該在require/include語句中使用括號?
- 4. 應用在淘汰賽
- 5. 使用Browserify +淘汰+淘汰賽預測
- 6. Webkit什麼時候會淘汰Web SQL?
- 7. 在淘汰賽
- 8. 在淘汰賽
- 9. 淘汰賽淨化號碼
- 10. 在jQuery模板中轉義大括號和淘汰賽js
- 11. 的Javascript使用淘汰賽
- 12. 使用排序淘汰賽
- 13. 採用淘汰賽
- 14. 淘汰賽在表
- 15. 與淘汰賽
- 16. 淘汰賽JS:foreachBinding
- 17. 淘汰賽datacontext
- 18. 淘汰賽
- 19. 淘汰賽難
- 20. 與淘汰賽
- 21. 淘汰賽有什麼不同data_bind
- 22. 爲什麼不工作淘汰賽foreach?
- 23. 如何調用該函數淘汰賽
- 24. 淘汰賽JS:mapping.fromJS添加時
- 25. 什麼時候應該在javascript中使用大括號?一般來說
- 26. 什麼時候應該在Javascript中使用代碼塊或括號?
- 27. 定製淘汰賽結合調用默認淘汰賽結合
- 28. 什麼時候應該使用AWS,什麼時候不使用
- 29. 什麼時候應該使用sed,什麼時候應該使用awk
- 30. 什麼時候應該使用memcpy,什麼時候應該使用memmove?
好的一點,唯一的例外是如果在data-bind屬性中使用JavaScript表達式,在這種情況下括號**是**必需的,例如, 'visible:personName()。length> 0' – benrwb
當使用基於註釋的虛擬綁定時,括號也是必需的,如:<! - ko foreach:observableArray() - >'。我不明白爲什麼會出現這種情況,但從2.3.2開始,情況確實如此。 – x0n
有關在表達式中使用可觀察項的另一個示例,請參見http://stackoverflow.com/a/11318720/1154642。 – bryanbraun