if else使用Knockout条件

时间:2017-07-24 19:26:54

标签: knockout.js knockout-mvc

我在Knockout很新。 我有一个问题,我如何使用Knockout的if / else。

例如像这样

<ul class="list-group" data-bind="foreach: users">
    <li class="list-group-item" data-bind="click : setasUser">
        <i class="fa fa-circle text-success"></i> <span data-bind="text: name"></span>
    </li>
</ul>

如果username == x

,我想要一个不可克隆的项目

我该怎么做?

2 个答案:

答案 0 :(得分:2)

不幸的是淘汰赛没有其他的。但它确实有if绑定和ifnot绑定。

这是一个小提琴。 http://jsfiddle.net/LkqTU/35843/

<ul class="list-group" data-bind="foreach: users">
<!-- ko ifnot: username() === 'x' -->
    <li class="list-group-item" data-bind="click : $parent.setasUser">
        <i class="fa fa-circle text-success"></i> <span data-bind="text: name"></span>
    </li>
  <!-- /ko -->
  <!-- ko if: username() === 'x' -->
  <li class="list-group-item" data-bind="text: name"> </li>
   <!-- /ko -->
</ul>

答案 1 :(得分:0)

只需根据您的条件设置点击事件功能,如下所示

<ul class="list-group" data-bind="foreach: users">
    <li class="list-group-item" data-bind="click : username !== x ? setasUser: null">
        <i class="fa fa-circle text-success"></i> <span data-bind="text: name"></span>
    </li>
</ul>