ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ react ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΠΈΡΠ΅ΠΌ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° React Ρ Π½ΡΠ»Ρ Π·Π° ΡΠ°Ρ
ΠΠ²ΡΠΎΡΠΈΠ·ΡΠΉΡΠ΅ΡΡ
ΠΠΈΡΠ΅ΠΌ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° React Ρ Π½ΡΠ»Ρ Π·Π° ΡΠ°Ρ
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Π²Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΠ΅ΡΡ Ρ React β Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ². React ΠΏΠΎΡΠ²ΠΈΠ»ΡΡ Π² 2013 Π³ΠΎΠ΄Ρ ΠΈ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΡΡΡΡΠΎ ΡΡΠ°Π» ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌ ΡΡΠ΅Π΄ΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ². Π‘Π΅Π³ΠΎΠ΄Π½Ρ Π² ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Facebook, Instagram, Trello, AirBnb, PayPal. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³Π½ΠΎΠ·Π° ΠΏΠΎΠ³ΠΎΠ΄Ρ: ΠΎΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ create-react-app (ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° GitHub) Π΄ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ API ΠΈ ΡΡΠΈΠ»Π΅ΠΉ bootswatch.
ΠΡΠΈΠΌ. ΠΏΠ΅ΡΠ΅Π². ΠΡΠ»ΠΈ Π²Ρ Π½Π°ΡΠΈΠ½Π°Π΅ΡΠ΅ ΠΈΠ·ΡΡΠ΅Π½ΠΈΠ΅ React, Π²Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠΎΠΈΡ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π½Π°Ρ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π», Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ Π΄Π΅Π»ΠΈΡΡΡ ΡΠΎΠ²Π΅ΡΠ°ΠΌΠΈ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ.
ΠΡΠΎΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» Π±ΡΠ» Π½Π°ΠΏΠΈΡΠ°Π½ Π΄Π»Ρ Π²ΠΎΡΠΊΡΠΎΠΏΠ° Open Source Dev Garage, ΠΏΡΠΎΡΠ΅Π΄ΡΠ΅Π³ΠΎ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΊΠΎΠ½ΡΠ΅ΡΠ΅Π½ΡΠΈΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² F8 2017. Π§ΡΠΎΠ±Ρ Π»ΡΡΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Π² ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ 48-ΠΌΠΈΠ½ΡΡΠ½ΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΠΏΠΈΡΡΠΌΠ΅Π½Π½ΡΠΌ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π² ΡΡΠΎΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅.
ΠΡΠΎΡΠΌΠΎΡΡΠ΅Π² ΡΠ΅ΠΌΠΈΠ½Π°Ρ ΠΈΠ»ΠΈ ΠΈΠ·ΡΡΠΈΠ² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ, Π²Ρ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³Π½ΠΎΠ·Π° ΠΏΠΎΠ³ΠΎΠ΄Ρ:
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π²Π°ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ Π²Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ node.js ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΊΠΎΠ΄Π°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Atom.
ΠΡΠΊΡΠΎΠ΅ΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π» ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ create-react-app :
ΠΠ°ΡΠ½Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³Π½ΠΎΠ·Π° ΠΏΠΎΠ³ΠΎΠ΄Ρ:
ΠΠ°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ ΠΌΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Π½Π°Π±ΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π°ΡΠ΅ React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΌΡ ΡΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ:
ΠΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΡΠΊΡΠΎΠ΅ΡΡΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅!
Π‘Π²ΠΎΠΉΡΡΠ²Π° ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ
ΠΠ°Π²Π°ΠΉΡΠ΅ Π²Π·Π³Π»ΡΠ½Π΅ΠΌ Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ create-react-app ΡΠΎΠ·Π΄Π°Π» Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. Π ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΊΠΎΠ΄Π° ΠΎΡΠΊΡΠΎΠ΅ΠΌ weather/src/App.js :
ΠΠ°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°, Π³Π΄Π΅ ΡΡΠ½ΠΊΡΠΈΡ render() ΡΠ²Π»ΡΠ΅ΡΡΡ Π΅Π³ΠΎ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ ΡΠ΅ΠΊΡΡ, ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅, ΠΊΠ°ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡ ΠΈΡ !
3β4 Π΄Π΅ΠΊΠ°Π±ΡΡ, ΠΠ½Π»Π°ΠΉΠ½, ΠΠ΅cΠΏΠ»Π°ΡΠ½ΠΎ
ΠΠ΄Π΅-Π½ΠΈΠ±ΡΠ΄Ρ Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°ΠΉΠ»Π° Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π³ΠΎΡΠΎΠ΄ΠΎΠ², Π΄Π»Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΡΡ ΠΏΠΎΠ³ΠΎΠ΄Ρ:
ΠΠ· ΠΌΠ°ΡΡΠΈΠ²Π° Π΄Π°Π½Π½ΡΡ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½Π°Π±ΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² button ΠΈ Π½Π°Π·Π½Π°ΡΠΈΠΌ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎ key Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ React Π·Π½Π°Π» ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
ΠΠ° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΠ°ΠΉΠ» App.js Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ.
Π‘ΠΎΡΡΠΎΡΠ½ΠΈΠ΅
ΠΡΠΈΠΌΠ΅Π½ΠΈΠΌ this.state ΠΈ this.setState Π² Π½Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ΅ App :
ΠΠ° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΠ°ΠΉΠ» App.js Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ.
ΠΠΈΠ·Π½Π΅Π½Π½ΡΠΉ ΡΠΈΠΊΠ» ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΈ Π²ΡΠ±ΠΎΡΠΊΠ° Π΄Π°Π½Π½ΡΡ
ΠΠ½ΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΠΌΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΊΠΎΠ΄ (React-ΠΊΠΎΠ΄ ΠΎΠ±ΡΡΠ½ΠΎ Π΄Π΅ΠΊΠ»Π°ΡΠ°ΡΠΈΠ²Π΅Π½), ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΠΆΠΈΠ·Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°. ΠΠ΅ΡΠΎΠ΄Ρ ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΊΠ»Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°ΠΌ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΊΠ°ΠΊ ΡΠ°Π· Π΄Π»Ρ ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°Π΅Π².
Π£Π»ΡΡΡΠΈΠΌ Π²ΡΠ²ΠΎΠ΄ render() Π΄Π»Ρ ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ³ΠΎ Π²ΡΠ²ΠΎΠ΄Π° Π΄Π°Π½Π½ΡΡ :
ΠΠ° ΡΡΠΎΠΌ ΡΡΠ°ΠΏΠ΅ ΡΠ°ΠΉΠ» App.js Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²
ΠΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΡΡΠΈΠ»ΠΈ ΠΈΠ· bootstrap Π² Π½Π°ΡΠ°Π»Π΅ ΡΠ°ΠΉΠ»Π°:
ΠΠ°Π»Π΅Π΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΈΠ· react-bootstrap ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° ΡΠ°ΠΉΡΠ΅ react-bootstrap:
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΏΡΠΈΠ²Π»Π΅ΠΊΠ°ΡΠ΅Π»ΡΠ½Π΅Π΅, Π½ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π΄ΠΎΡΠΎΠ²ΠΎ, Π΅ΡΠ»ΠΈ ΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΡΠΎ-ΡΠΎ ΠΎΡ ΡΠ΅Π±Ρ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ bootswatch :
ΠΠΊΠΎΠ½ΡΠ°ΡΠ΅Π»ΡΠ½ΡΠΉ Π²ΠΈΠ΄ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ:
Π Π°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΠ΅ (Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»)
ΠΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΡΠΉΡΠ΅ Π²Π°Ρ ΠΊΠΎΠ΄ Π½Π° Github, Π·Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π²Π°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» ReadMe, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ ΠΏΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ΅ΡΠ²ΠΈΡΠ°Ρ .
ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΡΠ²Π»ΡΠ΅ΡΡΡ Netlify, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠ»ΡΡΠ°Π΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Β«Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ³ΠΎ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°Π½ΠΈΡΒ».
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React Ρ Π½ΡΠ»Ρ Π² 2021 Π³ΠΎΠ΄Ρ
Apr 24 Β· 10 min read
ΠΠ°ΠΌΡΡΠ΅Π» ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠ΅ΠΌΡ ΠΎΡΠ²Π΅ΡΠ°Π» Jedai Saboteur Π² ΡΠ²ΠΎΠ΅ΠΉ ΡΡΠ°ΡΡΠ΅ Creating a React Appβ¦ From Scratch (Π°Π½Π³Π».), Π½Π° ΠΊΠΎΡΠΎΡΡΡ Π²Π²ΠΈΠ΄Ρ Π΅Π΅ Π³ΡΠ°ΠΌΠΎΡΠ½ΠΎΡΡΠΈ Π΄Π°ΠΆΠ΅ ΡΠ΄Π΅Π»Π°Π»ΠΈ ΡΡΡΠ»ΠΊΡ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ React.
ΠΠ°ΠΊ Π±Ρ ΡΠΎ Π½ΠΈ Π±ΡΠ»ΠΎ, Π½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΠ΄Π΅Ρ, ΠΈ Ρ Ρ Π΅ΡΠΈΠ» ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React Ρ Π½ΡΠ»Ρ Π² 2021 Π³ΠΎΠ΄Ρ. Π ΠΈΡΠΎΠ³Π΅ Π±ΡΠ»ΠΎ ΡΠ΅ΡΠ΅Π½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² ΡΠ΅ΠΏΠΎΡΠΊΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΡΠ΄ βΠ²Π°ΠΆΠ½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²β ΠΈ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π²Π΅ΡΡΠΈΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. Π Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅ Ρ ΠΌΠ΅Π½Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»Π°ΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π²ΡΡΠ΅ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°.
ΠΠ°Π΄Π°ΡΠ°
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΏΠΎΠΌΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ» ΠΏΠ°ΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ , βΠ²Π°ΠΆΠ½ΡΡ β ΠΏΠΎ ΠΌΠ΅ΡΠΊΠ°ΠΌ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΊΠ°, ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ:
ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ
ΠΠ·Π°Π΄Π°ΡΠΈΠ²ΡΠΈΡΡ ΡΠΏΠΈΡΠΊΠΎΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Ρ ΡΠ΅ΡΠΈΠ» ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ React.
ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ ΡΠ°Π·Π΄Π΅Π»Π° Creating Toolchain from Scratch Ρ ΠΏΡΠΈΠΊΠΈΠ½ΡΠ» ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ:
ΠΡΠΎΡ ΠΊΡΠ°ΡΠΊΠΈΠΉ ΠΎΡΡΡΠ²ΠΎΠΊ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΠΊΡΡΠ²Π°Π΅Ρ ΡΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². Π ΠΈΡΠΎΠ³Π΅ Π½Π° ΠΈΡ ΡΠΎΠ»ΠΈ Ρ Π²ΡΠ±ΡΠ°Π»:
ΠΡΠΎ Π²ΠΏΠΎΠ»Π½Π΅ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ. ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΡΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΡΠΎ Π²Ρ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° Ρ Π½ΠΈΠΌΠΈ Π»ΠΈΠ±ΠΎ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ, Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎ Π½ΠΈΡ ΡΠ»ΡΡΠ°Π»ΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ, ΡΠΎΠ³Π»Π°ΡΠ½ΠΎ ΠΌΠΎΠΈΠΌ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ, Π²ΡΠ΅ Π΅ΡΠ΅ Π½Π΅Π΄ΠΎΡΡΠ°Π΅Ρ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°: Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ.
Redux ΠΌΠΎΠ³Π»Π° ΡΡΠ°ΡΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ Π²ΡΠ±ΠΎΡΠΎΠΌ, Π½ΠΎ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ΅Π» Kea. ΠΠ΅Π»ΠΎ Π² ΡΠΎΠΌ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Kea Π½Π° Π±Π°Π·Π΅ Redux, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ.
ΠΠΎ ΠΏΡΠ°Π²Π΄Π΅ Π³ΠΎΠ²ΠΎΡΡ, Π·Π΄Π΅ΡΡ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΠΏΡΠ΅Π΄Π²Π·ΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²ΡΠ±ΡΠ°Π» Kea Π±ΠΎΠ»ΡΡΠ΅ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅, Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π» Π΅Π΅ ΠΌΠΎΠΉ ΠΊΠΎΠ»Π»Π΅Π³Π°.
ΠΠ°ΡΠ°Π»ΠΎ
Π src Π±ΡΠ΄Π΅Ρ Ρ ΡΠ°Π½ΠΈΡΡΡΡ Π²Π΅ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ°, Π° Π² public ΠΌΡ ΡΠ°Π·ΠΌΠ΅ΡΡΠΈΠΌ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°
ΠΠ°ΡΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π±ΡΠ΄Π΅Ρ Π½Π΅ ΡΠ½ΠΈΠ²Π΅ΡΡΠ°Π»ΡΠ½ΡΠΌ, Π° ΠΎΠ±ΡΡΠ°ΡΡΠΈΠΌ, ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡΡΠΈΠΌΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΡΡΠ°Π½Π΅Ρ Π΅Π³ΠΎ Π½Π΅ΠΎΡΡΠ΅ΠΌΠ»Π΅ΠΌΠΎΠΉ ΡΠ°ΡΡΡΡ.
Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° Ρ ΡΠ΅ΡΠΈΠ» Π²Π·ΡΡΡ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° webpack v5, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΠ·Π²Π°Π» ΡΡΠ΄ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΌΠΈ ΠΌΠ½ΠΎΠΉ ΡΠ°Π½Π΅Π΅ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ Ρ webpack v4. ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΈ ΠΏΠΎΠΏΡΡΠ½ΠΎ Π·Π°ΠΏΠ°ΡΡΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ ΠΌΠ½Π΅ ΠΏΠΎΠΌΠΎΠ³Π»Π° Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ, ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ ΠΈ ΠΏΠΎΡΡΡ Π½Π° Stack Overflow.
Babel
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Babel ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡΡΡ ΡΠ°ΠΊ:
babel-core β ΡΡΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ, ΡΠΎ Π΅ΡΡΡ ΡΠ°ΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ.
babel-cli ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ.
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΠΈ ΠΏΠ°ΠΊΠ΅ΡΠ° β ΡΡΠΎ βΡΠ°Π±Π»ΠΎΠ½Ρβ (Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ) Babel Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΡΡΠ΅Π½Π°ΡΠΈΡΠΌΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ. present-env ΠΈΠ·Π±Π°Π²Π»ΡΠ΅Ρ Π½Π°Ρ Π»ΠΈΡΠ½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ JS-ΠΊΠΎΠ΄ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Ρ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΠ°Ρ . preset-typescript ΠΈ preset-react Π³ΠΎΠ²ΠΎΡΡΡ ΡΠ°ΠΌΠΈ Π·Π° ΡΠ΅Π±Ρ: ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΡ ΠΈ TypeScript, ΠΈ React, ΡΠΎ Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ ΠΎΠ½ΠΈ ΠΎΠ±Π°.
TypeScript
Π ΡΡΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ TypeScript, ΠΏΠΎΡΡΠΎΠΌΡ Ρ Π½Π΅Π³ΠΎ Π±ΡΠ΄ΡΡ ΡΠ²ΠΎΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ.
Π‘Π½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΠ°ΠΊΠ΅Ρ typescript :
ΠΠ°Π±Π΅Π³Π°Ρ ΡΡΡΡ Π²ΠΏΠ΅ΡΠ΅Π΄, Ρ ΠΏΡΠ΅Π΄Π»Π°Π³Π°Ρ Π²Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Ρ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°:
Π Π½ΠΈΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ ΡΠΈΠΏΠΎΠ² Π΄Π»Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΡΠ΅ΠΌ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΠΎΠΆΠ΅ΡΠ΅ ΡΠΌΠ΅Π»ΠΎ ΠΌΠ΅Π½ΡΡΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΠΏΠΎΠ΄ ΡΠ²ΠΎΠΈ Π½ΡΠΆΠ΄Ρ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΡΡΠΈ ΠΎΠΏΡΠΈΠΈ:
Webpack
ΠΠ»Ρ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΡΠΎΠΌΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΡΠ΄ Π½Π°ΡΡΡΠΎΠ΅ΠΊ. ΠΠΎ ΡΡΡΠΈ, Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΡΠ°ΠΉΠ»Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΠ±ΠΈΡΠ°ΡΡ, ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ.
webpack ΠΈ webpack-cli ΡΠ»Π΅Π΄ΡΡΡ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ, ΡΡΠΎ ΠΈ Babel. ΠΠ΅ΡΠ²ΡΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌ ΠΏΠ°ΠΊΠ΅ΡΠΎΠΌ, Π° Π²ΡΠΎΡΠΎΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π½Π΅ΠΌΡ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΡ ΡΡΡΠΎΠΊΡ.
webpack-dev-server ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π½Π°ΠΌ Π΄Π»Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΡ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΡΡΠΎ package.json Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΡΡΠ»Π°Π΅ΡΡΡ Π½Π° Π½Π΅Π³ΠΎ ΠΈΠ· ΡΠΊΡΠΈΠΏΡΠ°, Π½ΠΎ ΠΎΠ½ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° webpack serve :
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ ΠΈΠ΄ΡΡ Π·Π°Π³ΡΡΠ·ΡΠΈΠΊΠΈ, Π½ΡΠΆΠ½ΡΠ΅ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ. ts-loader ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΡΡΡΡΡΠ²ΡΠ΅Ρ, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ JS-ΡΠ°ΠΉΠ»ΠΎΠ² Babel, ΡΠ°ΠΊΡΠΈΡΠ΅ΠΊΡΠΊΠΈ, ΠΎΠ½ Π½Π°ΠΌ Π½Π΅ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ.
Π Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ, ΠΊΠ°ΠΊ ΠΈ Π΄Π»Ρ Babel, Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ webpack.config.js :
React
Π£ΡΠΈΡΡΠ²Π°Ρ, ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΌΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React, Π½Π°ΠΌ ΡΠ°ΠΊΠΆΠ΅ Π½ΡΠΆΠ½Ρ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ.
ΠΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ:
Π Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΠΈ Π½Π°ΡΡΡΠΎΠΈΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ΠΌ.
Π‘ΠΎΠ³Π»Π°ΡΠ½ΠΎ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΏΠΎΠ΄ΡΠΌΠ°Π΅ΠΌ Π½Π°ΠΏΠ΅ΡΠ΅Π΄ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π»ΠΎΠ³ΠΈΠΊΠΈ Kea Π² TypeScript:
package.json
ΠΠΎΡΠ»Π΅ Π²ΡΠ΅ΠΉ ΡΡΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π½ΡΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² package.json ΠΏΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΠΎΠ²:
start Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠ΅ΡΠ²Π΅Ρ, Π° typegen Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΈΠΏΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² Π»ΠΎΠ³ΠΈΠΊΠΈ Kea.
ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΡΠ°ΠΌ ΠΊΠΎΠ΄ React
ΠΠ΅Ρ ΠΈΠ»ΠΎ ΡΠ°ΠΊ Π½Π°ΡΡΡΠΎΠ΅ΡΠ΅ΠΊ? ΠΡΠΌΠ°Ρ, ΡΡΠΎ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°ΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΠ½ΠΎΡΡΠΈ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ Π±Π΅ΡΡΡ Π½Π° ΡΠ΅Π±Ρ Π²ΡΠ΅ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ ΠΈ Π²Π΅ΡΡΠΈΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ (react-scripts).
ΠΠ°ΠΊ Π±Ρ ΡΠΎ Π½ΠΈ Π±ΡΠ»ΠΎ, Π½ΠΎ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΠΌΡ Π·Π°ΠΊΠΎΠ½ΡΠΈΠ»ΠΈ, ΠΈ ΠΏΠΎΡΠ° Π·Π°Π½ΡΡΡΡΡ ΠΊΠΎΠ΄ΠΎΠΌ.
ΠΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΠΈΡΡΠΎΠ³ΠΎ HTML
ΠΠ΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ:
Π’ΠΎΡΠΊΠ° Π²Ρ ΠΎΠ΄Π°
ΠΠΎΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΌΠΎΠ΅Π³ΠΎ:
ΠΠ΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΡΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
2. ΠΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌ ΠΈ ΠΎΡΡΠΈΡΠΎΠ²ΡΠ²Π°Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ App (ΠΊΠΎΡΠΎΡΡΠΉ Π΅ΡΠ΅ Π½Π΅ ΡΠΎΠ±ΡΠ°Π½).
3. ΠΡ ΡΠΎΠΎΠ±ΡΠ°Π΅ΠΌ React ΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ div root ΠΈΠ· index.html Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ «ΡΠΎΡΠΊΠΈ ΠΏΡΠΈΠ²ΡΠ·ΠΊΠΈ».
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅!
ΠΠ°Π»Π΅Π΅ ΡΠ°ΠΊΠΆΠ΅ Π²Π½ΡΡΡΠΈ src/ ΡΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ°ΠΉΠ» App.tsx ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΡΠΌ:
ΠΡΠΈ Π΄Π²Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° Ρ Π²ΠΊΠ»ΡΡΠΈΠ», ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ:
Π’Π°ΠΊ ΡΡΠΎ ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π° ΡΡΠΎΠΌ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡΡ. ΠΡΠ»ΠΈ ΠΆΠ΅ Π²Ρ ΡΠΎΠΆΠ΅ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, ΡΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ.
ΠΠ°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ JS ΠΈ TS
ΠΡΠΎΠ±Π»Π΅ΠΌ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π² webpack.config.js ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ ΡΡΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ:
Π§ΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π² ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΡΠΎΠΉ ΡΡ Π΅ΠΌΡ, Ρ ΠΏΡΠΎΡΡΠΎ ΡΠΎΠ·Π΄Π°Π» ΠΌΠ΅Π»ΠΊΠΈΠΉ JS-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΈ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π» Π΅Π³ΠΎ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Counter
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ Ρ Π΄ΠΎΠ±Π°Π²ΠΈΠ» Π² ΡΡΠΎΡ ΠΌΠΈΠ½ΠΈ-ΠΏΡΠΎΠ΅ΠΊΡ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΉ React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Counter.
ΠΠ°Π΄Π°ΡΠ΅ΠΉ Π±ΡΠ»ΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π² ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Kea ΠΈ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΈΠΌΠΏΠΎΡΡ CSS-ΡΠ°ΠΉΠ»ΠΎΠ².
1. index.tsx β ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ°ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ:
3. style.css β Π·Π΄Π΅ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π» ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΡΡΠΎ, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ Π² ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΠΈ CSS:
ΠΠΎΡ ΠΈ Π²ΡΠ΅!
ΠΡΠ»ΠΈ Π²Ρ Π΄ΠΎΠ±ΡΠ°Π»ΠΈΡΡ Π΄ΠΎ ΡΡΠΎΠΉ ΡΠ°ΡΡΠΈ, ΡΠΎ, Π½Π°Π΄Π΅ΡΡΡ, Π½Π° Π²ΡΡ ΠΎΠ΄Π΅ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ ΡΠ²Π΅ΠΆΠ΅ΠΈΡΠΏΠ΅ΡΠ΅Π½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React, ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΉ Π±Π°Π³Π°ΠΆ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π·Π½Π°Π½ΠΈΠΉ. Π§Π΅ΡΡΠ½ΠΎ Π³ΠΎΠ²ΠΎΡΡ, Π·Π΄Π΅ΡΡ Ρ ΠΏΡΠΎΡΡΠΎ Π·Π°Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π» ΡΠ°ΡΡΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΎΠ±ΡΡΠ΅Π½ΠΈΡ, Π½ΠΎ ΠΈ Π²Ρ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π΄Π° ΠΏΠΎΡΠ΅ΡΠΏΠ½ΡΠ»ΠΈ!
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° React Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App
Published on April 29, 2020
ΠΠ²ΡΠΎΡ Π²ΡΠ±ΡΠ°Π» Creative Commons Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΆΠ΅ΡΡΠ²ΠΎΠ²Π°Π½ΠΈΡ Π² ΡΠ°ΠΌΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Write for DOnations.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
React β ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° JavaScript Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΡΠ° ΡΠΈΡΡΠ΅ΠΌΠ° Π±ΡΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π° Facebook ΠΈ Π±ΡΡΡΡΠΎ ΡΡΠ°Π»Π° ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΉ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΎΠ½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π±ΡΡΡΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΈΠ½ΡΡΠΈΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ½ΡΡΠ½ΠΎΠΉ ΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΠ΅ΠΉ JavaScript Ρ ΠΏΠΎΡ ΠΎΠΆΠΈΠΌ Π½Π° HTML ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠΎΠΌ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ JSX.
Π Π°Π½ΡΡΠ΅ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° React ΡΡΠ΅Π±ΠΎΠ²Π°Π»ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ, ΡΠΎΡΡΠΎΡΡΠΈΠΉ ΠΈΠ· ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΠ°Π³ΠΎΠ² ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ, ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ Π΄Π»Ρ ΠΊΠΎΠ½Π²Π΅ΡΡΠ°ΡΠΈΠΈ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° Π² ΡΠΈΡΠ°Π΅ΠΌΡΠΉ Π²ΡΠ΅ΠΌΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°ΠΌΠΈ ΠΊΠΎΠ΄, Π° ΡΠ°ΠΊΠΆΠ΅ Π±Π°Π·ΠΎΠ²ΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΠΏΠΎΡΠ²ΠΈΠ»ΠΎΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Create React App, Π²ΠΊΠ»ΡΡΠ°ΡΡΠ΅Π΅ Π²ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ JavaScript, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° React, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠΈΡΡΠ΅ΠΌΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π°, ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ±ΠΎΡΠΊΠΈ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ Ρ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ Π³ΠΎΡΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ, ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈ Π²Π½Π΅ΡΠ΅Π½ΠΈΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΊΠΎΠ΄. Π’Π°ΠΊΠΆΠ΅ ΠΎΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΆΠ΅ ΡΠ΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠΈΠ½ΡΡ.
ΠΡΡΠ³ΠΈΠΌΠΈ ΡΠ»ΠΎΠ²Π°ΠΌΠΈ, Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ Webpack ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ±ΠΎΡΠΊΠΈ. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ Babel Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Ρ ΡΠ°Π·Π½ΡΠΌΠΈ Π±ΡΠ°ΡΠ·Π΅ΡΠ°ΠΌΠΈ. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ ΡΠ°Π±ΠΎΡΠ΅ ΡΠΎ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ². ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΠ°ΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° React Ρ ΠΌΠΈΠ½ΠΈΠΌΡΠΌΠΎΠΌ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ.
Π Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Ρ Π²Π°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡΠ΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΠΎΡΠ½ΠΎΠ²Ρ Π΄Π»Ρ Π»ΡΠ±ΡΡ Π±ΡΠ΄ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΡ Π²Π½Π΅ΡΠ΅ΡΠ΅ ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ΄ React, ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΠΈΠ»ΠΈ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ±ΠΎΡΠΊΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΌΠΈΠ½ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’Π°ΠΊΠΆΠ΅ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ²Π΅Ρ Ρ Π³ΠΎΡΡΡΠ΅ΠΉ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΎΠΉ, ΡΡΠΎΠ±Ρ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ»ΡΡΠ°ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΡ ΡΠ²ΡΠ·Ρ ΠΈ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎ ΠΈΠ·ΡΡΠ°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° React. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, Π²Ρ Π½Π°ΡΠ½Π΅ΡΠ΅ ΠΏΠΈΡΠ°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈ ΡΠΎΠ·Π΄Π°Π΄ΠΈΡΠ΅ ΡΡΡΡΠΊΡΡΡΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΡΡΠΈ ΠΈ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°ΡΡΡΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π²Π°ΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ.
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
ΠΠ»Ρ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΎΠ±ΡΡΠ°ΡΡΠ΅Π³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π²Π°ΠΌ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Node.js Π²Π΅ΡΡΠΈΠΈ 10.16.0, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΉ Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅. Π§ΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π² macOS ΠΈΠ»ΠΈ Ubuntu 18.04, ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΡΠΊΠ°Π·Π°Π½ΠΈΡΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Node.js ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² macOS ΠΈΠ»ΠΈ ΡΠ°Π·Π΄Π΅Π»Π° Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ PPA ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Node.js Π² Ubuntu 18.04.
Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ ΡΠ·ΡΠΊΠ° JavaScript, Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π²Π°ΠΌ ΠΏΠΎΠ΄ΠΎΠΉΠ΄Π΅Ρ ΡΠ΅ΡΠΈΡ ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° JavaScript, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΎΠ±Π»Π°Π΄Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ ΡΠ·ΡΠΊΠΎΠ² HTML ΠΈ CSS.
Π¨Π°Π³ 1 β Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App
ΠΠ° ΡΡΠΎΠΌ ΡΠ°Π³Π΅ ΠΌΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π΄ΠΈΡΠΏΠ΅ΡΡΠ΅Ρ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² npm Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°. Π‘ΠΊΡΠΈΠΏΡ ΡΠΊΠΎΠΏΠΈΡΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΡΠ°ΠΉΠ»Ρ Π² Π½ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ.
ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π·Π°ΠΏΡΡΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ±ΠΎΡΠΊΠΈ, Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°Π³ΡΡΠΆΠ΅Π½ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠΎΠ΄ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΡΠΈΡΠ»ΠΎΠΌ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠ΅ΠΉ.
ΠΠΎΡΠ»Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠΊΡΠΈΠΏΡΠ° Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅:
Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠ°Π½Π΄ npm Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΡΠ±ΠΎΡΠΊΠΈ, Π·Π°ΠΏΡΡΠΊΠ° ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π²Ρ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅.
Π’Π΅ΠΏΠ΅ΡΡ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π°ΡΡΡΠΎΠ΅Π½ Π² Π½ΠΎΠ²ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ. ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π½ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ:
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΠ΅ΡΡ Π² ΠΊΠΎΡΠ½Π΅Π²ΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡ ΡΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² Π½Π΅Π³ΠΎ Π²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ. ΠΠ΄Π½Π°ΠΊΠΎ Π²Ρ Π½Π΅ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΠ»ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ Π²Ρ Π½Π°ΡΡΠΈΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π¨Π°Π³ 2 β ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΊΡΠΈΠΏΡΠΎΠ² react-scripts
ΠΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΠΈΠ·ΡΡΠΈΡΠ΅ Π΅Π΅. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠΊΡΡΡΡ Π²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈΠ»ΠΈ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈΠ· Π½Π΅Π³ΠΎ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π Π»ΡΠ±ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΡΠΊΡΡΡΡ:
Π Π°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎΠ±ΠΎ Π²ΡΠ΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°Ρ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅:
node_modules/ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π²ΡΠ΅ Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ JavaScript, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. ΠΠ°ΠΌ Π½Π΅ΡΠ°ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ.
ΠΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ public/ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ HTML, JSON ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ. ΠΡΠΎ ΠΊΠΎΡΠ½Π΅Π²ΡΠ΅ ΡΠ΅ΡΡΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ·Π½Π°ΡΡ ΠΎ Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π½Π° ΡΠ°Π³Π΅ 4.
Π Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ src/ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΠΊΠΎΠ΄ React JavaScript Π΄Π»Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. Π ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ ΡΡΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠ΅ΠΉ. ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΠΌΡ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅ΠΌ ΠΎΠ± ΡΡΠΎΠΉ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ Π½Π° ΡΠ°Π³Π΅ 5.
README.md β ΡΡΠΎ ΡΠ°ΠΉΠ» ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Create React App, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ ΠΎΠ±Π·ΠΎΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΈ ΡΡΡΠ»ΠΊΠΈ Π½Π° ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. Π‘Π΅ΠΉΡΠ°Ρ Π»ΡΡΡΠ΅ ΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ°ΠΉΠ» README.md Π² ΠΏΠ΅ΡΠ²ΠΎΠ·Π΄Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠΎ ΠΌΠ΅ΡΠ΅ ΡΠ°Π·Π²ΠΈΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π²Ρ Π±ΡΠ΄Π΅ΡΠ΅ Π·Π°ΠΌΠ΅Π½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ ΠΎ Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅.
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» package.json Π² ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅:
ΠΡΠΈ ΡΠΊΡΠΈΠΏΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²Π°ΠΆΠ½ΠΎΡΡΠΈ. ΠΠ΅ΡΠ²ΡΠΉ ΡΠΊΡΠΈΠΏΡ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΊ ΡΠ΅ΠΌΡ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π³Π΅. ΠΡΠΎΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ±ΠΎΡΠΊΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡ ΡΠ·Π½Π°Π΅ΡΠ΅ ΠΎΠ± ΡΡΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ Π½Π° ΡΠ°Π³Π΅ 4, Π½ΠΎ Π»ΡΡΡΠ΅ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π³ΠΎ ΡΠ΅ΠΉΡΠ°Ρ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ.
Π‘ΠΊΡΠΈΠΏΡ build
ΠΡ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅:
ΠΡΠΎ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ Π²Π°ΠΌ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Create React App ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ Π²Π°Ρ ΠΊΠΎΠ΄ Π² ΠΏΡΠΈΠ³ΠΎΠ΄Π½ΡΠΉ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ.
ΠΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΡΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΈ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π½ΠΎΠ²ΡΡ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΉ:
Π‘ΠΊΡΠΈΠΏΡ test
ΠΠ»Ρ Π·Π°ΠΏΡΡΠΊΠ° ΡΠΊΡΠΈΠΏΡΠ° test Π²Π²Π΅Π΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠΎΠ³ΠΎ ΡΠΊΡΠΈΠΏΡΠ° Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ Π±ΡΠ΄ΡΡ Π²ΡΠ²Π΅Π΄Π΅Π½Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° Π±ΡΠ΄Π΅Ρ ΡΠΊΡΡΡΠ°. ΠΠ½ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
ΠΠΎ-Π²ΡΠΎΡΡΡ , Jest Π½Π΅ ΠΏΡΠΎΡΡΠΎ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΡΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π· ΠΈ Π·Π°ΠΊΡΡΠ²Π°Π΅ΡΡΡ. ΠΠ½ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅. ΠΡΠ»ΠΈ Π²Ρ Π²Π½Π΅ΡΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄, ΠΎΠ½ ΠΏΡΠΎΠ²Π΅Π΄Π΅Ρ ΡΠ΅ΡΡΡ ΡΠ½ΠΎΠ²Π°.
Π‘ΠΊΡΠΈΠΏΡ eject
Π¦Π΅Π½Π½ΠΎΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ Π°ΡΠΏΠ΅ΠΊΡΠΎΠ² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠ»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ JavaScript ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΎΡ Webpack ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΠ±ΠΎΡΠΎΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ Π΄ΠΎ Babel ΠΈ Π΄ΡΡΠ³ΠΈΡ ΡΡΠ΅Π΄ΡΡΠ² ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Create React App Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π° Π²Π°Ρ Π²ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΏΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈΠ· ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Π²Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π²Π½ΠΎΡΠΈΡΡ Π²ΡΠ΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ.
ΠΠΈΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π²Ρ Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΏΠ΅ΡΡΠΎΠ½Π°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠ»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΡΡΠΎ Π½Π΅Π²Π°ΠΆΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π·Π°Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ±ΠΎΡΠΊΠΈ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°. ΠΠ΄Π½Π°ΠΊΠΎ, ΠΊΠ°ΠΊ ΠΌΡ ΡΠΆΠ΅ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ Π²ΡΡΠ΅, ΠΏΠΎΡΠ»Π΅ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π²Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΠ±Π½ΠΎΠ²Π»ΡΡΡ Π΅Π³ΠΎ Ρ Π½ΠΎΠ²ΡΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App, ΠΈ Π²Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π²ΡΡΡΠ½ΡΡ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π²ΡΠ΅ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ.
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΡΠΊΡΠΈΠΏΡΡ Π΄Π»Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π³Π΅ ΠΌΡ Π·Π°ΠΏΡΡΡΠΈΠΌ ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅.
Π¨Π°Π³ 3 β ΠΠ°ΠΏΡΡΠΊ ΡΠ΅ΡΠ²Π΅ΡΠ°
ΠΠ° ΡΡΠΎΠΌ ΡΠ°Π³Π΅ Π²Ρ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΡΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ Π² ΡΠ²ΠΎΠ΅ΠΌ Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
ΠΠ΅ΡΠ΅Π΄ Π·Π°ΠΏΡΡΠΊΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ° Π²Ρ Π½Π΅Π½Π°Π΄ΠΎΠ»Π³ΠΎ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π·Π°ΠΌΠ΅ΡΠ°ΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ, Π° ΠΏΠΎΡΠΎΠΌ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠΊΡΠ°Π½:
ΠΡΠ»ΠΈ Π²Ρ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΠ΅ ΡΠΊΡΠΈΠΏΡ Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅, ΠΎΠ½ ΠΎΡΠΊΡΠΎΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡ Π² ΠΎΠΊΠ½Π΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡ ΡΠΎΠΊΡΡ Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° Π½Π° Π±ΡΠ°ΡΠ·Π΅Ρ.
Π Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠ° React:
ΠΠΎΠΊΠ° ΡΠΊΡΠΈΠΏΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, Ρ Π²Π°Ρ Π±ΡΠ΄Π΅Ρ Π°ΠΊΡΠΈΠ²Π½ΡΠΉ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ. ΠΠ»Ρ ΠΎΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠΊΡΠΈΠΏΡΠ° ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π°ΠΊΡΡΡΡ ΠΎΠΊΠ½ΠΎ ΠΈΠ»ΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΡ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π° ΠΈΠ»ΠΈ Π²Π²Π΅ΡΡΠΈ CTRL+C ΠΈΠ»ΠΈ β-+c Π² ΠΎΠΊΠ½Π΅ ΠΈΠ»ΠΈ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, Π³Π΄Π΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π²Π°Ρ ΡΠΊΡΠΈΠΏΡ.
ΠΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ, ΠΈ Π²Π°Ρ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠ΄ React ΡΠΆΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ. ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²Π½ΠΎΡΠΈΡΡ Π»ΡΠ±ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΠΊΠΎΠ΄ React JavaScript, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³ React Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅.
Π¨Π°Π³ 4 β ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ
Π’Π°ΠΊΠΆΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ²Π΅ΡΡΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ls :
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ ΡΠ°ΠΉΠ»ΠΎΠ² ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ Π²ΠΈΠ΄Π°:
Π€Π°ΠΉΠ» manifest.json ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ Π½Π°Π±ΠΎΡ ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΡΡ , ΠΎΠΏΠΈΡΡΠ²Π°ΡΡΠΈΠΉ Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠΎΠΌΠΈΠΌΠΎ ΠΏΡΠΎΡΠ΅Π³ΠΎ, Π² Π½Π΅ΠΌ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π½Π°ΡΠΊΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΠΊΡΠ°Π½Π°.
Π€Π°ΠΉΠ» index.html ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠΎΡΠ½Π΅Π²ΡΡ ΡΠ°ΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΡΠ°ΠΉΠ» ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΠ΅ΡΠ²Π΅Ρ, ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ Π΅Π³ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π²Π°Ρ Π±ΡΠ°ΡΠ·Π΅Ρ. ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° Π½Π΅Π³ΠΎ.
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎΡ ΡΡΠΎ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅:
Π ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅Π³Π° Ρ React App Π½Π° Sandbox :
Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΈ Π·Π°ΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ. ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅. ΠΠ°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΡΠ»ΠΈ ΡΡΠΎΠ³ΠΎ Π½Π΅ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ, ΠΎΠ±Π½ΠΎΠ²ΠΈΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π’Π΅ΠΏΠ΅ΡΡ Π²Π΅ΡΠ½ΠΈΡΠ΅ΡΡ Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ React Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΊΠΎΡΠ½Π΅Π²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°. ΠΠ° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΡΠ½Π΅Π²ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², Π½ΠΎ ΠΎΠ΄ΠΈΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΈΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ. Π’Π°ΠΊ React ΡΠ·Π½Π°Π΅Ρ, ΠΊΡΠ΄Π° ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ HTML. ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½Ρ
Π Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅:
ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΠΈΠΌΡ Ρ base Π½Π° root :
ΠΡ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅Ρ ΠΈ Π²Π½Π΅ΡΠ»ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΡΠ½Π΅Π²ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ HTML. ΠΠΎΠΊΠ° Π΅ΡΠ΅ Π²Ρ Π½Π΅ ΠΌΠ΅Π½ΡΠ»ΠΈ ΠΊΠΎΠ΄ JavaScript. Π ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΌΡ Π½Π°ΡΠ½Π΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΊΠΎΠ΄ React JavaScript.
Π¨Π°Π³ 5 β ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ΅Π³Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° ΠΈ ΡΡΠΈΠ»Π΅ΠΉ
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΈΠ»ΠΈ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· ΡΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΡΡΠΈ.
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» App.test.js :
ΠΠΎΠ³Π΄Π° Π²Ρ ΠΎΡΠΊΡΠΎΠ΅ΡΠ΅ ΡΡΠΎΡ ΡΠ°ΠΉΠ», Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠ΅ΡΡ:
ΠΠ΄Π΅ΡΡ ΠΈΠΌΠ΅Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°ΠΉΠ»ΠΎΠ² CSS, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΈΠ»ΠΈ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠ°ΠΊ Π΅ΡΠ»ΠΈ Π±Ρ ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ»ΠΈ ΡΠΎΠ±ΠΎΠΉ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°ΠΉΠ» JavaScript. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π²Π°Ρ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ CSS Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π½Π°ΠΏΡΡΠΌΡΡ, Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠ°ΠΉΠ» CSS Π΄Π»Ρ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ. Π’Π°ΠΊ Π²Ρ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΡΠ΅ ΠΎΠ±Π»Π°ΡΡΠΈ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΉΡΡΠ²Π°. ΠΡ Π½Π΅ Ρ ΡΠ°Π½ΠΈΡΠ΅ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ CSS ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ ΠΎΡ JavaScript. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ CSS, JavaScript, ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΡΠ³ΡΡΠΏΠΏΠΈΡΠΎΠ²Π°Π½Ρ Π²ΠΌΠ΅ΡΡΠ΅.
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» App.css Π² ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΠΌ ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅. ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
ΠΡΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» CSS Π±Π΅Π· ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ CSS. ΠΡΠ»ΠΈ Ρ ΠΎΡΠΈΡΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΡ ΠΏΠΎΠ·Π΄Π½Π΅Π΅, Π½ΠΎ Π²Π½Π°ΡΠ°Π»Π΅ Ρ Π²Π°Ρ Π±ΡΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΎΡΡΡΠ΅ ΡΠ°ΠΉΠ»Ρ CSS. Π‘ΠΎΠ·Π΄Π°ΡΠ΅Π»ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App ΡΡΠ°ΡΠ°Π»ΠΈΡΡ Π½Π΅ Π΄Π΅Π»Π°ΡΡ Π΅Π³ΠΎ Π±Π΅Π·Π°ΠΏΠ΅Π»Π»ΡΡΠΈΠΎΠ½Π½ΡΠΌ, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π³ΠΎΡΠΎΠ²ΡΡ ΡΡΠ΅Π΄Ρ.
ΠΡΠΎΠ²Π΅ΡΡΡΠ΅ Π±ΡΠ°ΡΠ·Π΅Ρ. ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄Π΅Π»ΠΎ ΡΠ°Π½ΡΡΠ΅:
ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:
Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΠΈ Π·Π°ΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ».
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠΎΠΊΠ° ΡΡΠΎ Π²Ρ Π΅ΡΠ΅ Π½Π΅ Π²ΠΈΠ΄Π΅Π»ΠΈ Π½ΠΈΡΠ΅Π³ΠΎ, ΡΡΠΎ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅. Π§ΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΡΠΎ, ΠΎΡΠΊΡΠΎΠΉΡΠ΅ ΡΠ°ΠΉΠ» App.js :
ΠΠΎΠ΄ Π² ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΊΠ°ΠΊ Π½Π°Π±ΠΎΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² HTML. ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ΅Π³Π°
Ρ Edit src/App.js and save to reload. Π½Π° Hello, world ΠΈ ΡΠΎΡ ΡΠ°Π½ΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
ΠΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΡΠ΅ΡΡ Π² Π±ΡΠ°ΡΠ·Π΅Ρ, ΠΈ Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ:
ΠΡ Π²Π½Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ React.
ΠΠ΄Π΅ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π΅ΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π²Π΅ΡΠ΅ΠΉ. ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½Ρ img :
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ°ΠΊ Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ logo Π² ΡΠΈΠ³ΡΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΊΠ°Ρ . ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΠ΅ Π°ΡΡΠΈΠ±ΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΡΡΡΠΎΠΊΠ°ΠΌΠΈ ΠΈΠ»ΠΈ ΡΠΈΡΠ»Π°ΠΌΠΈ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ. React ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΈΡ ΠΊΠ°ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ JavaScript, Π° Π½Π΅ ΠΊΠ°ΠΊ ΡΡΡΠΎΠΊΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²Ρ Π½Π΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΎΠ±ΡΠ°Π·, Π° ΡΡΡΠ»Π°Π΅ΡΠ΅ΡΡ Π½Π° Π½Π΅Π³ΠΎ. ΠΠΎΠ³Π΄Π° Webpack Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ±ΠΎΡΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΎΠ½ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°Π΅Ρ ΠΎΠ±ΡΠ°Π· ΠΈ Π·Π°Π΄Π°Π΅Ρ Π΄Π»Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π΅ ΠΌΠ΅ΡΡΠΎ.
ΠΠ°ΠΊΡΠΎΠΉΡΠ΅ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ.
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ DOM Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅, Π²Ρ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠΎ ΠΎΠ½ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΠΏΡΡΡ. ΠΡΠ»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ Chrome, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½Ρ, ΡΠ΅Π»ΠΊΠ½ΡΠ² Π΅Π³ΠΎ ΠΏΡΠ°Π²ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΎΠΉ ΠΌΡΡΠΈ ΠΈ Π²ΡΠ±ΡΠ°Π² ΠΏΡΠ½ΠΊΡ Inspect.
ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅:
Π DOM ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΡΠΎΠΊΠ°:
ΠΠ°Ρ ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π»ΠΎΠ³ΠΎΡΠΈΠΏΠ° Π΄ΡΡΠ³ΠΎΠ΅ ΠΈΠΌΡ. Webpack Π½ΡΠΆΠ½ΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΏΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ. Π’Π°ΠΊ ΡΡΠΎ Π΄Π°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠΌΠΏΠΎΡΡΠΈΡΡΠ΅ΡΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ Π½Π° ΡΠ°Π·Π½ΡΡ ΠΏΡΡΡΡ .
ΠΡ Π²Π½Π΅ΡΠ»ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ΄ React JavaScript. ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠ°Π³Π΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ build Π΄Π»Ρ ΠΌΠΈΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄Π° Π² Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Π½Π° ΡΠ΅ΡΠ²Π΅ΡΠ΅.
Π¨Π°Π³ 6 β Π‘Π±ΠΎΡΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ°
ΠΠ° ΡΡΠΎΠΌ ΡΠ°Π³Π΅ ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΡΠ±ΠΎΡΠΊΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Π½Π° Π²Π½Π΅ΡΠ½ΠΈΡ ΡΠ΅ΡΠ²Π΅ΡΠ°Ρ .
ΠΡΠΊΡΠΎΠΉΡΠ΅ build/index.html Π² ΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠΌ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅.
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΡΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ ΡΠ±ΠΎΡΠΊΠΈ Π²Π΅ΡΡ ΠΊΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΌΠΈΠ½ΠΈΡΠΈΡΠΈΡΡΠ΅ΡΡΡ Π΄ΠΎ Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ. Π§ΠΈΡΠ°Π΅ΠΌΠΎΡΡΡ ΠΊΠΎΠ΄Π° Π½Π΅Π²Π°ΠΆΠ½Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΡΠΎΡ ΠΊΠΎΠ΄ Π½Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ. ΠΡΠΈ ΡΠ°ΠΊΠΎΠΉ ΠΌΠΈΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΊΠΎΠ΄ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ°, Π½ΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ. Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠ°ΠΊΠΈΡ ΡΠ·ΡΠΊΠΎΠ² ΠΊΠ°ΠΊ Python, ΠΏΡΠΎΠ±Π΅Π» Π½Π΅ ΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΈΡ ΠΊΠΎΠ΄Π° ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠΎΠΌ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΌ ΠΎΠ±ΡΡΠ°ΡΡΠ΅ΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π΅ Π²Ρ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ²ΠΎΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React ΠΈ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΠ±ΠΎΡΠΊΠΈ JavaScript Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ Π²Π΄Π°Π²Π°ΡΡΡΡ Π² ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π΄Π΅ΡΠ°Π»ΠΈ. Π ΡΡΠΎΠΌ ΠΈ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΠ·Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Create React App: Π²Π°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ Π²ΡΠ΅, ΡΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ. ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΈΠ³Π½ΠΎΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΡΠ°ΠΏΡ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ ΠΈΡΠΊΠ»ΡΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π° ΠΊΠΎΠ΄Π΅ React.
ΠΡ ΠΈΠ·ΡΡΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ°, ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΡΠ±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΡ Π±ΡΠ΄Π΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΠΎ, ΡΠ°ΠΊ ΡΡΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΈΡ Π΄Π»Ρ Π±ΡΠ΄ΡΡΠΈΡ ΠΎΠ±ΡΡΠ°ΡΡΠΈΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ². ΠΠ΅ ΠΌΠ΅Π½Π΅Π΅ Π²Π°ΠΆΠ½ΠΎ, ΡΡΠΎ Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ»ΠΈ ΡΠ²ΠΎΠΉ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ React.
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ²ΠΈΠ΄Π΅ΡΡ React Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ, ΠΏΡΠΎΠΉΠ΄ΠΈΡΠ΅ ΠΎΠ±ΡΡΠ°ΡΡΠ΅Π΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΈΠ· DigitalOcean API Ρ ΠΏΠΎΠΌΠΎΡΡΡ React.














