Change Detection betyder opdatering af DOM, hver gang data ændres. Angular giver to strategier til ændringsdetektion. I sin standardstrategi, når nogen data muteres eller ændres, vil Angular køre ændringsdetektoren for at opdatere DOM.
Hvordan detekterer Angular ændringsdetektion?
For at køre ændringsdetektoren manuelt:
- Inject ChangeDetectorRef-tjeneste i komponenten.
- Brug markForCheck i abonnementsmetoden til at instruere Angular om at kontrollere komponenten, næste gang ændringsdetektorer kører.
- På ngOnDestroy livscykluskrogen, afmeld det observerbare.
Hvad er ændringsdetektionscyklus i Angular?
Under ændringsdetektion Angular kører over bindingerne, evaluerer udtryk, sammenligner dem med de tidligere værdier og opdaterer DOM om nødvendigt. Efter hver ændringsdetektionscyklus kører Angular en kontrol for at sikre, at komponenttilstanden er synkroniseret med brugergrænsefladen.
Hvad er Angular onPush-ændringsdetektion?
OnPush-strategien ændrer Angulars ændringsdetekteringsadfærd på samme måde, som det at afmontere en komponent gør. Ændringsdetektionen kører ikke længere automatisk for hver komponent. Angular i stedet lytter efter specifikke ændringer og kører kun ændringsdetektionen på et undertræ for den komponent.
Hvad er ændringsdetektionsstrategi?
Den grundlæggende mekanisme for ændringsdetektion er toudfør kontrol mod to tilstande, den ene er den nuværende tilstand, den anden er den nye tilstand. Hvis en af disse tilstande er forskellig fra den anden, så er noget ændret, hvilket betyder, at vi skal opdatere (eller gengive) visningen.