我知道你们中的一些人会畏缩这个问题,因为我知道我要问的不是最佳实践。但是,无论如何,我都会提出疑问,并希望将滥用现象降到最低。
ngIf当条件语句为false时,从DOM中删除元素。是否有设置,标志,参数等会改变ngIf的行为,以便元素保留在DOM中并设置为显示:无?我不是在寻找像[hidden]这样的解决方法,但我想知道是否可以更改* ngIf的行为。
我很快(这是关键字)更新了现有的jQuery项目。该项目正在为手风琴使用“ .toggle()”方法。作为更新的一部分,现在使用ngIf过滤了手风琴项目。由于jQuery代码会在应用加载时初始化手风琴,因此请使用ngIf将其删除,然后将它们“未初始化”。
我使用了一种解决方法来解决该问题。但是我仍然对更改ngIf行为的选项是否可用感到好奇。
答案 0 :(得分:1)
ngIf
没有这种行为。
改为尝试ngStyle
:
[ngStyle]="{display: condition ? 'block' : 'none'}"
答案 1 :(得分:0)
您可以使用[hidden]
。请记住否认您的第一个条件。
<div [hidden]="!yourCondition" >
</div>