Lit: ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π½Π° Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ
β Π°Π½Π°Π»ΠΈΠ· ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠΉ
ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΡΠ΅Π·ΠΈΡΡ:
- Lit β ΡΡΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠ²Π΅ΡΡ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΡΠ½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°Π²ΡΠΈΠΉ ΠΈΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
- ΠΠ΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠΌΠ΅ΡΡ "ΡΠΎΠ΄ΠΎΠ²ΡΠ΅ ΡΡΠ°Π²ΠΌΡ": ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡΡ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΡΡ ΠΈΠ½ΡΠ΅ΡΠΎΠΏΠ΅ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΠ΅ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡ.
- ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ Π·Π°ΡΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Lit (ΠΏΡΠΎΡΡΠΎΡΠ°, ΡΠΊΠΎΡΠΎΡΡΡ, ΠΈΠ½ΡΠ΅ΡΠΎΠΏΠ΅ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ) Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΡΠΏΠΎΡΠ½ΡΠΌΠΈ.
- ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π² Π²Π΅Π±Π΅ β ΡΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΏΡΡΡ, Π½ΠΎ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π² Π²Π΅Π±-ΡΡΠ°Π½Π΄Π°ΡΡΠ°Ρ Π΄Π°Π»Π΅ΠΊΠ° ΠΎΡ ΠΈΠ΄Π΅Π°Π»Π°.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ
ΠΠ΄Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²: Π Π°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΠ΅, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΠ΅, ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΡΠ°ΡΡΠΈ ("ΠΊΠΈΡΠΏΠΈΡΠΈΠΊΠΈ"). ΠΠ°ΠΆΠ΄ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π² ΡΠ°Π·Π½ΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ.
ΠΡΡΠΎΡΠΈΡ: ΠΠ΄Π΅Ρ ΠΏΡΠΈΡΠ»Π° Π² Π²Π΅Π± 10-15 Π»Π΅Ρ Π½Π°Π·Π°Π΄. ΠΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΡΠ°ΡΡΠΎ Π±ΡΠ»ΠΈ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΡΠΌΠΈ. ΠΠ΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ β ΡΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°, Π½ΠΎ ΠΈΡ ΡΡΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΠΉ Π΄Π»Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π»ΠΎ ΠΊ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ²-Π½Π°Π΄ΡΡΡΠΎΠ΅ΠΊ (Polymer, Lit).
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Polymer (ΠΏΡΠ΅Π΄ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΈΠΊΠ° Lit): ΠΠ΅Π΄Π»Π΅Π½Π½Π°Ρ, ΠΏΠΎΡΡΠ°ΠΏΠ½Π°Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° Π·Π°ΠΌΠ΅ΡΠ½Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ (ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ "ΠΏΡΠΎΡΠ²Π»ΡΠ»ΠΈΡΡ" ΠΎΠ΄ΠΈΠ½ Π·Π° Π΄ΡΡΠ³ΠΈΠΌ).
ΠΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²
ΠΠ»ΠΎΠ±Π°Π»ΡΠ½Π°Ρ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΈΡ ΠΈ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΡΡΡΡ Π² Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΌ ΡΠ΅Π΅ΡΡΡΠ΅, ΡΡΠΎ Π²Π΅Π΄ΡΡ ΠΊ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠ°ΠΌ ΠΈΠΌΡΠ½. ΠΠ΅Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ Π΄Π»Ρ Π½Π΅ΠΉΠΌΡΠΏΠ΅ΠΉΡΠΎΠ² (Π°Π½Π°Π»ΠΎΠ³Π° DNS), ΡΡΠΎ ΠΊΡΠΈΡΠΈΡΠ½ΠΎ Π΄Π»Ρ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΠΌΠΎΡΡΠΈ. Π’Π°ΠΊΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ: ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π΄Π΅ΡΠΈΡ, ΡΡΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΠΎΠ»ΠΈΡΠΈΠ»Ρ Π΄Π»Ρ Π½Π°ΡΠΈΠ²Π½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, geolocation).
ΠΡΡΡΠΊΠ°Ρ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ DOM
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π²ΡΠ΅Π³Π΄Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΎΠ΄Π½ΠΎΠΌΡ DOM-ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. ΠΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡ: Π½Π΅Π»ΡΠ·Ρ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°ΡΡ "ΠΏΡΠΈΠ·ΡΠ°ΡΠ½ΡΠΉ" ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π±Π΅Π· Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ΅.
ΠΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ΅ΠΉ Π΄Π°Π½Π½ΡΡ
Π§Π΅ΡΠ΅Π· Π°ΡΡΠΈΠ±ΡΡΡ HTML ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΡΠΎΠΊΠΈ. ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ², ΡΠΈΡΠ΅Π», Π΄Π°Ρ ΡΡΠ΅Π±ΡΡΡΡΡ ΠΊΠΎΡΡΡΠ»ΠΈ (ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ/ΠΏΠ°ΡΡΠΈΠ½Π³ JSON, ΠΊΠ°ΡΡΠΎΠΌΠ½ΡΠ΅ ΠΊΠΎΠ½Π²Π΅ΡΡΠ΅ΡΡ), ΡΡΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΠ΅Ρ ΠΊΠΎΠ΄ ΠΈ ΡΠ½ΠΈΠΆΠ°Π΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ.
ΠΠ·ΠΎΠ»ΡΡΠΈΡ ΡΡΠΈΠ»Π΅ΠΉ (Scoped Styles) ΠΈ Shadow DOM
ΠΠ·ΠΎΠ»ΡΡΠΈΡ ΡΡΠΈΠ»Π΅ΠΉ Π² Shadow DOM ΡΠ΅ΡΠ°Π΅Ρ Π½Π΅ ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΠΎΠ½ΡΠ΅ΠΊΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°. ΠΡΡΡΠΊΠ°Ρ ΠΈΠ·ΠΎΠ»ΡΡΠΈΡ ΠΌΠ΅ΡΠ°Π΅Ρ ΠΊΠ°ΡΠΊΠ°Π΄Π½ΠΎΠΌΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΠΈΠ»Π΅ΠΉ ΠΈΠ·Π²Π½Π΅, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ "Π»ΠΎΡΠΊΡΡΠ½ΠΎΠΌΡ" ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈΠ· ΡΠ°Π·Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Shadow DOM ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠ°Π·Π½ΡΠΌ, Π½ΠΎ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½ΡΠΌ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌ (ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΡ).
ΠΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ part ΠΈ exportparts
ΠΠ»Ρ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠ΅Π΄ΡΡΠΌΠΎΡΡΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π°ΡΡΠΈΠ±ΡΡΡ part.
ΠΡΠΈΠΌΠ΅Ρ: Π§ΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΠ²Π΅Ρ h1 Π²Π½ΡΡΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° my-header, Π½ΡΠΆΠ½ΠΎ:
- Π ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅
my-headerΠ΄Π»Ρh1ΠΏΡΠΎΠΏΠΈΡΠ°ΡΡpart="head". - Π ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅ΡΠ΅ ΡΡΠΈΠ»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅Π·
::part(head).
ΠΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠΈΡΡΠ΅ΠΌΡ:
- ΠΠΎΡΡΡΠΏ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΡΠΎΠ²Π΅Π½Ρ Π³Π»ΡΠ±ΠΈΠ½Ρ. ΠΠ»Ρ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π²Π½ΡΡΡΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ
ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π½ΡΠΆΠ΅Π½
exportparts. exportpartsΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ Π²ΡΠ΅Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΡpartΠΈ ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠΌΡ Π±ΠΎΠΉΠ»Π΅ΡΠΏΠ»Π΅ΠΉΡΡ.- ΠΠΎΠ½ΡΠ»ΠΈΠΊΡΡ ΠΈΠΌΠ΅Π½ ΠΏΡΠΈ ΡΠΊΡΠΏΠΎΡΡΠ΅.
- Π ΠΈΡΠΎΠ³Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ Π½Π΅ΠΊΠ°ΡΡΠΎΠΌΠΈΠ·ΠΈΡΡΠ΅ΠΌΡΠΌΠΈ Π±Π΅Π· ΠΎΠ³ΡΠΎΠΌΠ½ΡΡ ΡΡΠΈΠ»ΠΈΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°.
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π°: adoptedStyleSheets β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ Shadow DOM, ΠΊΠ°ΠΊΠΈΠ΅ ΡΡΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΠΎ ΡΡΠΎ Π½Π΅ ΡΠ΅ΡΠ°Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ (ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ, ΠΈΠΌΠΏΠΎΡΡΡ).
ΠΠ½Π°Π»ΠΈΠ· Π·Π°ΡΠ²Π»Π΅Π½Π½ΡΡ
ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ² Lit
ΠΡΠΎΡΡΠΎΡΠ° (Simple)
Π£ΠΏΡΠΎΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΡΡΡΠΌΠΈ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ β Π΄Π°. ΠΠΎ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°ΠΌΠΈ boilerplate-ΠΊΠΎΠ΄Π° Π²ΡΡ Π΅ΡΡ ΠΌΠ½ΠΎΠ³ΠΎ. ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΈΠ·Π»ΠΈΡΠ½Π΅ΠΌΡ Π±ΠΎΠΉΠ»Π΅ΡΠΏΠ»Π΅ΠΉΡΡ ΠΈ Π½Π΅ΡΠ΄ΠΎΠ±ΡΡΠ²Ρ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ.
Π‘ΠΊΠΎΡΠΎΡΡΡ (Fast)
- Π Π°Π·ΠΌΠ΅Ρ ΡΠ΄ΡΠ° (5 ΠΠ±): ΠΡΠΎ ΠΏΠ»ΡΡ, Π½ΠΎ Π½Π΅ Π³Π»Π°Π²Π½ΡΠΉ ΡΠ°ΠΊΡΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ.
- Π‘ΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ: ΠΡΠΈΠ²ΡΠ·ΠΊΠ° ΠΊ DOM ΠΈ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π°ΠΊΠ»Π°Π΄Π½ΡΠ΅ ΡΠ°ΡΡ ΠΎΠ΄Ρ. ΠΠ·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ JavaScript ΠΈ Π½Π°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π±ΡΠ°ΡΠ·Π΅ΡΠ° (Ρ ΠΎΡΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ²) ΠΌΠ΅Π½Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ, ΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ° Ρ ΡΠΈΡΡΡΠΌΠΈ JS-ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ.
- ΠΠ΅Π½ΡΠΌΠ°ΡΠΊΠΈ: Π§Π°ΡΡΠΎ ΡΠ΅ΡΡΠΈΡΡΡΡ ΡΠΈΠ½ΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠ΅Π½Π°ΡΠΈΠΈ, Π΄Π°Π»ΡΠΊΠΈΠ΅ ΠΎΡ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΡΡΡΡΡΠ°ΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ².
ΠΠ½ΡΠ΅ΡΠΎΠΏΠ΅ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ (Web Components)
ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π²ΡΡΠΎΠΊΠ°Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΡ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ Lit. ΠΡΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ Ρ React, Angular ΠΈΠ»ΠΈ ΡΡΡΡΠΌ HTML Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈΠ·-Π·Π° ΡΠ°Π·Π½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ (Π°ΡΡΠΈΠ±ΡΡΡ vs ΡΠ²ΠΎΠΉΡΡΠ²Π°). Π§Π°ΡΡΠΎ ΡΡΠ΅Π±ΡΡΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π°Π΄Π°ΠΏΡΠ΅ΡΡ.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ ΠΊΠΎΡΡΡΠ»ΠΈ
Π Π΅Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΡ ΠΈ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° Π²Π΅ΡΡ
Π½Π΅ΠΌ ΡΡΠΎΠ²Π½Π΅ ΡΠ²ΠΎΠΉΡΡΠ². ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Ρ Π²Π½ΡΡΡΠΈ ΠΎΠ±ΡΠ΅ΠΊΡΠ°-ΡΠ²ΠΎΠΉΡΡΠ²Π° Π½Π΅ Π²ΡΠ·ΠΎΠ²Π΅Ρ ΡΠ΅ΡΠ΅Π½Π΄Π΅Ρ. ΠΡΠΆΠ½ΠΎ Π·Π°ΠΌΠ΅Π½ΡΡΡ Π²Π΅ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ. ΠΠ΅Ρ ΡΠ΅Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ "ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ" β Π΅Ρ ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ ΠΏΡΠΈΠΊΡΡΡΠΈΠ²Π°ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ (ΡΠΈΠ³Π½Π°Π»Ρ, state). Π’Π°ΠΊΠΆΠ΅ Π½Π΅Ρ ΠΌΠΈΠΊΡΠΎ-Π³ΡΠ°Π½ΡΠ»ΡΡΠ½ΠΎΠΉ ΡΠ΅Π°ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ β ΡΠ΅Π½Π΄Π΅ΡΠ΅Ρ Π»ΠΈΠ±ΠΎ ΡΠ΅Π½Π΄Π΅ΡΠΈΡ Π²ΡΡ, Π»ΠΈΠ±ΠΎ Π½ΠΈΡΠ΅Π³ΠΎ.
Π Π°Π±ΠΎΡΠ° Ρ DOM
ΠΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ ΠΈ ΠΏΡΡΠΌΠΎΠΉ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΈ ΠΈΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π·Π°ΠΏΡΡΠΊ Π°Π½ΠΈΠΌΠ°ΡΠΈΠΈ) ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎΡΠ»ΠΎΠ²Π½ΡΠΉ ΠΊΠΎΠ΄ Ρ query-ΡΠ΅Π»Π΅ΠΊΡΠΎΡΠ°ΠΌΠΈ, ΡΡΠΎ ΠΏΡΠΎΡΠΈΠ²ΠΎΡΠ΅ΡΠΈΡ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΡΡΠΈ.
Π Π°Π±ΠΎΡΠ° Ρ ΡΠΎΡΠΌΠ°ΠΌΠΈ ΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ
ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° Π½Π΅ΡΡΡΠΎΠΊΠΎΠ²ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π°Ρ) Π² ΠΈΠ½ΠΏΡΡΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΡΡΠ½ΠΎΠΉ ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΠΈ, ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ±ΡΡΠΈΠΉ ΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ Π±ΠΎΠ»ΡΡΠΎΠΌΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ boilerplate-ΠΊΠΎΠ΄Π°. ΠΡΠΈΠΌΠ΅ΡΡ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΎΡΠΈΠ±ΠΊΠΈ (Π½Π΅ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, Π»ΠΈΡΠ½ΠΈΠ΅ ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΠΈ ΡΠ°ΡΠΎΠ²ΡΡ ΠΏΠΎΡΡΠΎΠ²).
Π¨Π°Π±Π»ΠΎΠ½Ρ, ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³ ΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ DOM
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΎΠ½Π½ΡΡ ΡΡΡΠΎΠΊ β ΡΡΠΎ "ΠΏΠ΅ΡΠ΅ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ DOM". Π Lit ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ (ΠΏΠ°ΡΡΡΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·) ΠΈ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ (ΠΏΠΎΠ΄ΡΡΠ°Π²Π»ΡΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·). ΠΡΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠ΅ DOM-ΡΠ·Π»Ρ Ρ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠ°ΡΡΡΠΌΠΈ. ΠΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ΅Π½Π΄Π΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π΄Π΅ΡΠ΅Π²ΠΎ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°ΡΠ΅ΠΌ Π΄ΠΈΡΡΠΈΡΡΡ Ρ ΡΠ΅Π°Π»ΡΠ½ΡΠΌ DOM.
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ Π² ΡΠΏΠΈΡΠΊΠ°Ρ
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ² ΠΊΠ°ΠΊ ΠΊΠ»ΡΡΠ΅ΠΉ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² Π½Π°ΡΠ°Π»ΠΎ ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΏΠΎΠ»Π½ΠΎΠΌΡ ΠΏΠ΅ΡΠ΅ΡΠ΅Π½Π΄Π΅ΡΡ Π²ΡΠ΅Ρ
ΡΡΡΠΎΠΊ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΊΠΎΠ½ΡΠ΅Π½Ρ Ρ Π²ΡΠ΅Ρ
ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΡΠΎ Π°Π½ΡΠΈΠΏΠ°ΡΡΠ΅ΡΠ½. Π ΠΈΠ΄Π΅Π°Π»Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π½ΠΎΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ.
ΠΡΠΈΠΌΠ΅Ρ: ΠΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² Π½Π°ΡΠ°Π»ΠΎ ΡΠΏΠΈΡΠΊΠ° Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈΠ΄Π΅Ρ ΠΏΠΎ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π° Π½Π΅ ΠΈΠ½Π΄Π΅ΠΊΡΡ.
Π£ΡΠ»ΠΎΠ²Π½ΡΠΉ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³ ΠΈ ΡΠΏΠΈΡΠΊΠΈ: ΠΡΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠΉ ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° DOM-ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ, Π° ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°ΡΡΡΡ, ΡΡΠΎ Π²Π΅Π΄ΡΡ ΠΊ ΠΏΠΎΡΠ΅ΡΠ΅ Π²Π½ΡΡΡΠ΅Π½Π½Π΅Π³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ.
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π°
ΠΡΠΈΡΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΡΠ»ΠΈ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Π²Π΅ΡΡ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΡΠ°Π½ΠΎΠ²Π»ΡΠ΅ΡΡΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ "ΡΠΌΠΈΡΠ°Π΅Ρ", Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠ° Π»ΠΎΠΊΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π² ΠΎΠ΄Π½ΠΎΠΌ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅.
ΠΡΠΈΠΌΠ΅Ρ: ΠΡΠΈΠ±ΠΊΠ° Π² ΡΡΠ½ΠΊΡΠΈΠΈ
incrementΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π²Π΅ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, Π²ΠΊΠ»ΡΡΠ°Ρ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΡΡΠ½ΠΊΡΠΈΡcalculate, ΠΏΠ΅ΡΠ΅ΡΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ.Π Π΅ΡΠ΅Π½ΠΈΠ΅ Π² Lit: ΠΠ°ΠΆΠ΄ΠΎΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ Π² ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ-ΠΎΠ±Π΅Π·ΠΎΠΏΠ°ΡΠΈΠ²Π°ΡΠ΅Π»Ρ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ,
maybe). ΠΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π±ΠΎΠΉΠ»Π΅ΡΠΏΠ»Π΅ΠΉΡ. Π€ΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π½Π΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π³ΠΎΡΠΎΠ²ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠΎΠ² ΡΠΈΠΏΠ°Error Boundaries.
ΠΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ΅ΡΠ΅Π· ΠΌΠ°ΡΡΠΈΠ² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΡ
ΡΠ°ΡΡΠ΅ΠΉ ΡΠ°Π±Π»ΠΎΠ½Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·. ΠΡΠΎΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΊΠ»ΡΡ Π΄Π»Ρ ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌΡ DOM-ΡΠ·Π»Ρ.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ: ΠΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ ΡΡΠΊΠ°ΠΌΠΈ (cache). ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π²ΡΡ ΠΏΠ΅ΡΠ΅ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ. ΠΠ΅ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π½ΡΠΆΠ½Π° ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½ΠΎ ΡΠ°Π·Π½ΠΎΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ
ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
ΠΠ΄Π΅Π°Π»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅: ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΊΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΡΠΊΠ°Π·Π°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°-ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, id) Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΡ
ΠΊΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΡΡΡΠ½ΠΎΡΡΠ΅ΠΉ.
ΠΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΠΎΡΡΡ ΠΈ guard
ΠΠ»Ρ Π°ΡΠΈΠ½Ρ
ΡΠΎΠ½Π½ΡΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ async ΠΈ guard. ΠΡΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π±ΠΎΠΉΠ»Π΅ΡΠΏΠ»Π΅ΠΉΡΠ°, ΡΠ΅ΠΌ Π² Π΄ΡΡΠ³ΠΈΡ
ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°Ρ
(Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Mol ΠΈΠ»ΠΈ React Ρ Suspense). Π Π΄ΡΡΠ³ΠΈΡ
ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°Ρ
ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ "Π±ΡΠΎΡΠΈΡΡ" Promise, ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° ΡΠ°ΠΌΠ° ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΠ² fallback ΠΈ Π·Π°ΡΠ΅ΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ.
ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈ ΠΏΠ°ΠΌΡΡΡ
ΠΠ΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΠ°ΠΌΡΡΠΈ. ΠΡΡΡΠΎΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ >100 Π±Π°ΠΉΡ, ΡΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΡΠΉ JS ΠΎΠ±ΡΠ΅ΠΊΡ β ΠΎΠΊΠΎΠ»ΠΎ 16 Π±Π°ΠΉΡ (Π² 10 ΡΠ°Π· Π±ΠΎΠ»ΡΡΠ΅).
ΠΡΠΎΠ±Π»Π΅ΠΌΠ° ΠΌΠ°ΡΡΡΠ°Π±Π°: ΠΡΠΈ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π΅ ΡΠΎΡΠ΅Π½ ΠΈΠ»ΠΈ ΡΡΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 2500 ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π²) ΡΡΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠΌΡ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ (Π΄ΠΎ Π³ΠΈΠ³Π°Π±Π°ΠΉΡΠ°) ΠΈ ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎΠΌΡ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Ρ (ΠΌΠΈΠ½ΡΡΡ).
Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΡ. ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ Π½ΡΠΆΠ½ΠΎ ΡΠ΅Π½Π΄Π΅ΡΠΈΡΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΡΠ°Π·Ρ; Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΎΡΠΊΡΡΠ»ΡΡ Π±ΡΡΡΡΠΎ ΠΈ ΡΠ°Π±ΠΎΡΠ°Π» Π±Π΅Π· ΡΠΎΡΠΌΠΎΠ·ΠΎΠ².
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΌ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄ΠΎΠΌ (Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Mol)
- ΠΠΈΠ±ΠΊΠΎΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²: ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Ρ ΠΊ DOM-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌ. ΠΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ "ΠΏΡΠΈΠ·ΡΠ°ΡΠ½ΡΠ΅" ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ.
- ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° Π΄Π°Π½Π½ΡΡ : ΠΡΡΠΌΠ°Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° Π»ΡΠ±ΡΡ JS-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ Π±Π΅Π· ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
- Π‘ΡΠΈΠ»ΠΈ: ΠΠ΄ΠΈΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΡΡΠΈΠ»Π΅ΠΉ Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΡΠ΅ΠΌΠΎΠΉ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΠΎΡΡΡΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ°Ρ ΠΊΠ°ΡΠΊΠ°Π΄Π½ΠΎΠ΅ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈΠ· ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°.
- ΠΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ: ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΡΡΡ JS-ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² β Π±ΡΡΡΡΠ΅Π΅, ΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ ΠΎΡΡΠΎΠ²ΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² (DOM-ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ "ΠΈΠ· ΠΊΠΎΡΠΎΠ±ΠΊΠΈ" Π΄Π»Ρ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° Π±ΠΎΠ»ΡΡΠΈΡ ΡΠΏΠΈΡΠΊΠΎΠ².
- Π Π°Π±ΠΎΡΠ° Ρ DOM: ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ JSX (ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ TypeScript) Π΄Π»Ρ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ Π±Π΅Π· ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠΌΡ DOM React.
ΠΡΠ²ΠΎΠ΄Ρ
- Lit ΠΈ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ β ΡΡΠΎ ΠΏΠΎΠΏΡΡΠΊΠ° ΡΡΠ°Π½Π΄Π°ΡΡΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π°, ΠΎΠ±ΡΠ΅ΠΌΠ΅Π½ΡΠ½Π½Π°Ρ legacy-ΡΠ΅ΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΈ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΠΌΠΈ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΠΌΠΈ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΡΠΌΠΈ.
- ΠΠ»ΡΡΠ΅Π²ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ β Π½ΠΈΠ·ΠΊΠ°Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΈΠ·-Π·Π° ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ ΠΊ DOM ΠΈ ΠΈΠ·Π±ΡΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ, ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄Π°Π½Π½ΡΡ
, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½Π°Ρ Π³ΠΈΠ±ΠΊΠΎΡΡΡ, ΡΠΎΠΌΠ½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΈΠ½ΡΠ΅ΡΠΎΠΏΠ΅ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΡ, ΠΎΠ³ΡΠΎΠΌΠ½ΡΠΉ Π±ΠΎΠΉΠ»Π΅ΡΠΏΠ»Π΅ΠΉΡ Π² ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ (
part/exportparts) ΠΈ Π½ΠΈΠ·ΠΊΠ°Ρ ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ. - ΠΠ°ΡΠ²Π»Π΅Π½Π½ΡΠ΅ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° Lit (ΠΏΡΠΎΡΡΠΎΡΠ°, ΡΠΊΠΎΡΠΎΡΡΡ) ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π½ΠΈΠ²Π΅Π»ΠΈΡΡΡΡΡΡ ΡΡΠΈΠΌΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠ»ΠΎΠΆΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ .
- ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠ΅ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ, Π½Π΅ Π·Π°Π²ΡΠ·Π°Π½Π½ΡΠ΅ Π½Π° Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π΄Π»Π°Π³Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠ»Π΅Π³Π°Π½ΡΠ½ΡΠ΅, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ.