Knockout.js 如何否定if绑定?

Knockout.js 如何否定if绑定?,knockout.js,Knockout.js,我正在尝试实现类似于“ifnot”绑定的功能,类似这样的功能: 没有可用的类别 var-self; 函数viewModel(){ self=这个; 自我分类=可观察到的个体数([]); } 应用绑定(新的viewModel()); var renderCategoryTemplate=函数(数据){ 对于(变量i=0;i

我正在尝试实现类似于“
ifnot
”绑定的功能,类似这样的功能:

没有可用的类别

var-self; 函数viewModel(){ self=这个; 自我分类=可观察到的个体数([]); } 应用绑定(新的viewModel()); var renderCategoryTemplate=函数(数据){ 对于(变量i=0;i
这可能吗?还是有更好的方法


我只能在一秒钟内看到文本“无可用类别”。但随后它就消失了。有什么建议吗?

如果不等于

<div data-bind="if: !Categories()"><p>No Categories available</p></div>
没有可用的类别

如果没有类别,这将计算为,然后显示

编辑如果不希望它闪烁,请执行以下操作-

<div data-bind="text: !Categories() ? 'There are no categories' : ''"></div>

如果不等于

<div data-bind="if: !Categories()"><p>No Categories available</p></div>
没有可用的类别

如果没有类别,这将计算为,然后显示

编辑如果不希望它闪烁,请执行以下操作-

<div data-bind="text: !Categories() ? 'There are no categories' : ''"></div>

如果不等于

<div data-bind="if: !Categories()"><p>No Categories available</p></div>
没有可用的类别

如果没有类别,这将计算为,然后显示

编辑如果不希望它闪烁,请执行以下操作-

<div data-bind="text: !Categories() ? 'There are no categories' : ''"></div>

如果不等于

<div data-bind="if: !Categories()"><p>No Categories available</p></div>
没有可用的类别

如果没有类别,这将计算为,然后显示

编辑如果不希望它闪烁,请执行以下操作-

<div data-bind="text: !Categories() ? 'There are no categories' : ''"></div>

是否存在ifnot绑定 是,如果没有绑定,则存在
绑定

从这些文件中:

<div data-bind="ifnot: someProperty">...</div>
。。。
相当于以下内容:

<div data-bind="if: !someProperty()">...</div>
。。。
假设someProperty是可观察的,因此需要将其作为函数调用以获取当前值

为什么它会闪烁? 您看到的闪烁是因为在运行淘汰脚本并删除它之前,dom首先使用该文本进行渲染。为了消除这种情况,您可以使用knockout设置文本

<div data-bind="ifnot: Categories">
    <p data-bind:"text:'No Categories available'"></p>
</div>

这样,文本就不会在敲除运行之前显示,因为需要KO来处理它。如果需要,您现在还可以将消息拉出并使其变为变量。

是否存在ifnot绑定 是,如果没有绑定,则存在
绑定

从这些文件中:

<div data-bind="ifnot: someProperty">...</div>
。。。
相当于以下内容:

<div data-bind="if: !someProperty()">...</div>
。。。
假设someProperty是可观察的,因此需要将其作为函数调用以获取当前值

为什么它会闪烁? 您看到的闪烁是因为在运行淘汰脚本并删除它之前,dom首先使用该文本进行渲染。为了消除这种情况,您可以使用knockout设置文本

<div data-bind="ifnot: Categories">
    <p data-bind:"text:'No Categories available'"></p>
</div>

这样,文本就不会在敲除运行之前显示,因为需要KO来处理它。如果需要,您现在还可以将消息拉出并使其变为变量。

是否存在ifnot绑定 是,如果没有绑定,则存在
绑定

从这些文件中:

<div data-bind="ifnot: someProperty">...</div>
。。。
相当于以下内容:

<div data-bind="if: !someProperty()">...</div>
。。。
假设someProperty是可观察的,因此需要将其作为函数调用以获取当前值

为什么它会闪烁? 您看到的闪烁是因为在运行淘汰脚本并删除它之前,dom首先使用该文本进行渲染。为了消除这种情况,您可以使用knockout设置文本

<div data-bind="ifnot: Categories">
    <p data-bind:"text:'No Categories available'"></p>
</div>

这样,文本就不会在敲除运行之前显示,因为需要KO来处理它。如果需要,您现在还可以将消息拉出并使其变为变量。

是否存在ifnot绑定 是,如果没有绑定,则存在
绑定

从这些文件中:

<div data-bind="ifnot: someProperty">...</div>
。。。
相当于以下内容:

<div data-bind="if: !someProperty()">...</div>
。。。
假设someProperty是可观察的,因此需要将其作为函数调用以获取当前值

为什么它会闪烁? 您看到的闪烁是因为在运行淘汰脚本并删除它之前,dom首先使用该文本进行渲染。为了消除这种情况,您可以使用knockout设置文本

<div data-bind="ifnot: Categories">
    <p data-bind:"text:'No Categories available'"></p>
</div>


这样,文本就不会在敲除运行之前显示,因为需要KO来处理它。如果需要,您现在还可以拉出消息并使其变为变量。

如果我将外部div标记更改为p标记,则每个答案都会起作用:

<p data-bind="ifnot: Categories">
    <p data-bind="text: 'No Categories available'"></p>
</p>

也适用于:

<p data-bind="if: !Categories()">
    <p data-bind="text: 'No Categories available'"></p>
</p>


不确定为什么如果我将外部div更改为p标记,那么每个答案都会起作用:

<p data-bind="ifnot: Categories">
    <p data-bind="text: 'No Categories available'"></p>
</p>

也适用于:

<p data-bind="if: !Categories()">
    <p data-bind="text: 'No Categories available'"></p>
</p>


不确定为什么如果我将外部div更改为p标记,那么每个答案都会起作用:

<p data-bind="ifnot: Categories">
    <p data-bind="text: 'No Categories available'"></p>
</p>

也适用于:

<p data-bind="if: !Categories()">
    <p data-bind="text: 'No Categories available'"></p>
</p>


不确定为什么如果我将外部div更改为p标记,那么每个答案都会起作用:

<p data-bind="ifnot: Categories">
    <p data-bind="text: 'No Categories available'"></p>
</p>

也适用于:

<p data-bind="if: !Categories()">
    <p data-bind="text: 'No Categories available'"></p>
</p>