如果和ifnot敲除声明在同一行

时间:2014-10-06 10:22:06

标签: javascript knockout.js

大家好我想做一个敲门声明,如果它被归类为真或假,会改变某些因素。我的问题是我需要在同一行中使用if和ifnot语句来输出正确的结果。

示例代码:

   <!-- ko if: User().loggedin --> 

                <li><a href="#"><p class="Score">1</p><p style="display:none;"
                    >First</p></a></li> 
                            <!--/ko-->

现在我需要在该语句中使用ifnot语句,因为它有几种不同的方式。

<!-- ko ifnot: Goal -->

那么我如何将它们混合在一起,以便它们可以在同一条线上输出。下面的例子(我知道它不起作用。)但可以让你完全理解我想要的东西。

<!-- ko if: User().loggedin --> 
 <!-- ko ifnot: Goal -->    
                    <li><a href="#"><p class="Score">1</p><p style="display:none;"
                        >First</p></a></li> 
                                <!--/ko-->
<!--/ko-->

所有可观察的工作都很好。

由于

1 个答案:

答案 0 :(得分:0)

除了大量混淆缩进之外,你的第二个例子很好;在这里删除了混乱:

<!-- ko if: User().loggedin --> 
    <!-- ko ifnot: Goal -->    
                    <li><a href="#"><p class="Score">1</p><p style="display:none;"
                        >First</p></a></li> 
    <!--/ko-->
<!--/ko-->

交替:

<!-- ko if: User().loggedin && !Goal() -->    
                    <li><a href="#"><p class="Score">1</p><p style="display:none;"
                        >First</p></a></li> 
                                <!--/ko-->
<!--/ko-->

...假设Goal是可观察的(如果没有,则删除())。