在某些情况下,我在模板中有很多条件,例如我有很多条件进ngIf。我怎样才能减少条件,最好用一个条件来显示div,或者使用一些方法来处理条件并隐藏/显示元素。Angular 2如何避免模板中的许多条件(ngIf)?
<div (click)="createMessage()" class="message" *ngIf="array.length && message.queue && message.queue.length && !state || array.length && message.text && message.text.length && !state">
</div>
移动出来的模板到组件类,并指它在'* ngIf'或维护您在'* ngIf'被更新时,使用一个变量其中一个条件发生变化,这样每次运行变化检测时都不会执行表达式。 –
谢谢,但一切都不清楚。如果我将在这种情况下使用一个变量这个变量将如何更新许多条件?你能给我举个例子吗? – marcos
你需要每次表达式的任何部分改变时更新这个变量。我不知道这是否适合您的情况。我不知道你的代码发生了什么样的变化。 –