Scusate se qui è già stata data una risposta, ma non sono riuscito a trovare alcuna corrispondenza per il nostro scenario specifico, quindi ecco qui!
Abbiamo discusso nel nostro team di sviluppo in merito alle chiamate di funzione in modelli angolari. Ora, come regola generale, siamo d'accordo che non dovresti farlo. Tuttavia, abbiamo provato a discutere quando potrebbe andare bene. Lascia che ti dia uno scenario.
Diciamo che abbiamo un blocco modello racchiuso in un ngIf, che controlla più parametri, come qui:
<ng-template *ngIf="user && user.name && isAuthorized">
...
</ng-template>
Ci sarebbe una differenza significativa nelle prestazioni rispetto a qualcosa del genere:
Modello:
<ng-template *ngIf="userCheck()">
...
</ng-template>
Dattiloscritto:
userCheck(): boolean {
return this.user && this.user.name && this.isAuthorized;
}
Quindi, per riassumere la domanda, l'ultima opzione avrebbe costi significativi per le prestazioni?
Preferiremmo usare il secondo approccio, in situazioni in cui dobbiamo controllare più di 2 condizioni, ma molti articoli online dicono che le chiamate di funzione sono SEMPRE cattive nei template, ma è davvero un problema in questo caso?