我试图同时使用 Angular ng-switch
和 ng-if
指令,但它似乎不起作用。我当时做的是:
<div data-ng-if = "x === 'someValue'" data-ng-switch on = "booleanValue">
<div data-ng-switch-when = "!booleanValue" data-ng-include="'partial/index.html'"></div>
<div data-ng-switch-when = "booleanValue" data-ng-include="'partial/pageTwo.html'"></div>
</div>
我只是想知道这是否可能,或者是否有其他方法可以根据 $scope 中的某些条件来切换这些部分?
最佳答案
在 ng-switch-when 中,使用 true
和 false
而不是 booleanValue
和 !booleanValue
:
<div data-ng-if = "x === 'someValue'" data-ng-switch on = "booleanValue">
<div data-ng-switch-when = "false" data-ng-include="'partial/index.html'"></div>
<div data-ng-switch-when = "true" data-ng-include="'partial/pageTwo.html'"></div>
</div>
您还可以使用 ng-show:
<div data-ng-if = "x === 'someValue'" >
<div data-ng-show = "!booleanValue" data-ng-include="'partial/index.html'"></div>
<div data-ng-show = "booleanValue" data-ng-include="'partial/pageTwo.html'"></div>
</div>
或者再次使用 ng-if :
<div data-ng-if = "x === 'someValue'" >
<div data-ng-if = "!booleanValue" data-ng-include="'partial/index.html'"></div>
<div data-ng-if = "booleanValue" data-ng-include="'partial/pageTwo.html'"></div>
</div>
ng-if 更接近 ng-switch,因为它们实际上都从 DOM 中分离和重新附加 html 片段。 ng-show 只是切换片段的可见性,而不将其从 DOM 中删除。
关于javascript - ngswitch 和 ngif 可以一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23705439/