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

Relaterade artiklar