2014-02-19 31 views
3

我不知道在哪裏使用屬性或功能。你能否詳細解釋一下hasCellphone在這裏是一個功能還是屬性。何時可以是財產或功能。我們應該使用什麼?
啓用:hasCellphone或
啓用:hasCellphone() 以及爲什麼如此。使用地點Knockout JS中的屬性或功能

<input type='checkbox' data-bind="checked: hasCellphone" /> 
I have a cellphone 

Your cellphone number: 
<input type='text' data-bind="value: cellphoneNumber, enable: hasCellphone" /> 

<script type="text/javascript"> 
var viewModel = { 
    hasCellphone : ko.observable(false), 
    cellphoneNumber: "" 
}; 
</script> 

回答

2

正如你已經爲自己設定,hasCellphoneobservable,它是一個可觀察的。並作爲官方文件:

觀察是功能。 observable的實際值和訂閱者由函數內部緩存。您可以通過將新值作爲函數的唯一參數傳遞給observable的值,並通過不傳遞參數來讀取該值。

以及使用觀測沒有或()

但是,如果你在表達式中使用可觀察到的有約束力的,那麼你就需要引用它作爲一個功能。同樣,在代碼中,你通常需要引用你的observables作爲函數,除非你真的想要傳遞observable本身(不是值)。

你可以看看下面的文章:

10 Things to Know About KnockoutJS on Day One

相關問題