我有以下功能:

viewModel.unreadCount = ko.dependentObservable(function() {   
    var unreadCount = 0;

    for (var i = 0; i x< xxxxxxxxxxxx.length; i++) {
        if (xxxxxx == false) {
            unreadCount++;
        }
    }

    return unreadCount;
}, viewModel);

当我在quignoutjs中使用它时,我不能做一个简单的 if (viewModel.unreadCount()==0), , 像这样:

<div data-bind="visible: viewModel.unreadCount()==0">

事实证明,当我运行时:

<p>${ (typeof viewModel.unreadCount) }</p>

我得到了“功能”。

有什么想法,为什么是我如何返回int,以便我可以做一个if语句?

有帮助吗?

解决方案

自从 ko.dependentObservable() 正在返回函数,作为 螺栓锁 指出的是,您应该能够通过使用此看起来有些奇怪的语法来调用其返回的函数:

<div data-bind="visible: (viewModel.unreadCount)()==0">

然后,这将在返回的函数上执行功能应用程序,而不仅仅是 unreadCount 成员 viewModel.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top