typescript - Prestandapåverkan av getter i template i Angular
Jag tar över en befintlig Angular-app. I den ser jag hela tiden att värden som används i mallarna i många komponenter faktiskt är en egenskap som maskeras med getters/setters, utan någon ytterligare logik :
<input type="number" [(ngModel)]="age" [disabled]="formDisabled">
get formDisabled() {
return this._formDisabled;
}
set formDisabled(value: boolean) {
this._formDisabled = value;
}
Vår app har prestandamål. I AngularJS hade alla funktioner i mallar en prestandapåverkan, eftersom de måste beräknas (även bara för att returnera ett värde). Är det fortfarande sant i Angular (nu 5) och borde jag ersätta dessa värdelösa åtkomstmetoder med direktfält om jag stöter på dem?
Tack.
Svar #1
Ja, jag tror det, funktioner kommer att anropas vid varje ändringsdetekteringscykel.
Men en getter är bättre, utan ens bättre.
Referens (del 3): https://netbasal.com/optimizing-the-performance-of-your-angular-application-f222f1c16354