Signály môžu transformovať časti vašej kódovej základne k lepšiemu; zistiť ako a prečo.

15. februára 2023 tím spoločnosti Angular zaviedol signály do rámca jednoduchou požiadavkou na stiahnutie. Odvtedy sa v komunite Angular viedli živé diskusie o jeho použití a výhodách. Mnohí dokonca začali vytvárať prototypy so signálmi, aby si vyskúšali jeho funkčnosť.

Pozrime sa, ako táto nová funkcia funguje, jej syntax a ako ju používať po úplnom zavedení.

Čo sú signály?

Typ signálu je nový reaktívny primitívny typ Angular. Jeho účelom je udržať hodnotu, rovnako ako štandardná premenná, ale charakteristickým znakom signálu je jeho jedinečné správanie. Ak sa signál zmení, upozorní na všetko, čo od neho závisí.

Okrem toho môže Angular použiť signály ako nový prístup na detekciu a spúšťanie zmien, namiesto súčasného predvoleného prístupu špinavej kontroly celého stromu komponentov.

Ako používať signály v Angular

Signál bude vyzerať asi takto:

@Component({
selektor: „moja aplikácia“,
samostatný: pravda,
šablóna:
instagram viewer
`
Počet: {{ count() }} </div>
Double: {{ double() }} </div>

changeCount() {
toto.count.set(5)
}
}

V tomto komponente aplikácie je počet premenných signál inicializovaný s hodnotou nula. počet je potom odkazovaný vo vnútri double (vypočítaná hodnota) a šablóne. Takže, keď kliknutie na tlačidlo nastaví hodnotu počtu na päť, vypočítaná hodnota (dvojnásobok) aj hodnoty v šablóne sa aktualizujú.

Každá časť Uhlová zložka ktorý závisí od signálu sa automaticky aktualizuje, keď sa hodnota zmení.

Prečo je zavedenie signálov dôležité

Signály uľahčujú učenie a prácu s Angular. Prechod na signály ako nový predvolený spôsob učenia a budovania s Angular harmonizuje proces učenia. Či už uprednostňujeme imperatívnejší štýl kódovania s Angular, alebo sa chceme naučiť deklaratívnejší štýl kódovania.

Väčšina ľudí začína s kódovaním nevyhnutne, pretože je to vo všeobecnosti intuitívnejšie a pre ľudí známe. Ale prechod z imperatívneho prístupu na deklaratívny spôsob zahŕňa zmenu paradigmy a úplnú zmenu nášho mentálneho modelu. To je dôvod, prečo je RX.js, reaktívna knižnica, pre mnohých ťažké naučiť sa.

Signály spoja tieto dva samostatné prístupy. Každý sa môže štandardne naučiť signály, začať sa učiť koncepty za reaktivitou a dokonca sa nemusí starať o ich začlenenie Angular RX.js ak nemôžu alebo nechcú.

Akonáhle budete spokojní s základy Angularu a chcete prejsť na deklaratívnejší štýl kódovania, môžete jednoducho pridať RX.js k pojmom, ktorým už rozumiete.

Signály by mali zlepšiť uhlové programovanie pre každého

Signals je nový reaktívny mechanizmus Angular, ktorý môžete použiť na vytvorenie reaktívnych hodnôt pre spotrebiteľov na čítanie. Signál okamžite upozorní všetkých spotrebiteľov, keď sa jeho hodnota zmení. Signály harmonizujú proces učenia Angular tým, že spájajú imperatívne a deklaratívne prístupy ku kódovaniu.

Angular sa bude spoliehať na signály, aby bola detekcia zmien ľahšia a robustnejšia. Preto, ako vývojár Angular, učenie sa používať signály vám poskytne pevnejšie pochopenie reaktivity v Angular a urobí vás lepším vývojárom. Pred učením pokročilejších častí nezabudnite zvládnuť základy Angularu.