在Knockout JS中使用Property或function的地方

时间:2014-02-19 06:48:38

标签: javascript knockout.js

我不知道在哪里使用属性或功能。能否请您详细解释一下hasCellphone在这里的功能或属性。当它可以是财产或功能。我们应该用什么?
启用:hasCellphone或
enable:hasCellphone()  为什么会这样。

<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>

1 个答案:

答案 0 :(得分:2)

正如您自己设定的那样,hasCellphoneobservable,这是一个可观察的。并作为官方文件:

  

Observables是函数。 observable的实际值和订阅者由函数内部缓存。您可以通过将新值作为函数的唯一参数传递来设置可观察值,并通过不传递参数来读取值。

关于在没有()的情况下使用observable:

  

但是,如果在表达式中使用observable,则在绑定中,则需要将其作为函数引用。同样,在代码中,您通常需要将您的observable引用为函数,除非您确实想要传递observable本身(而不是值)。

您可以查看以下文章:

10 Things to Know About KnockoutJS on Day One