ΠΊΠ°ΠΊ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ react ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Babel ΠΈ Webpack Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ React-ΠΏΡΠΎΠ΅ΠΊΡΠ° Ρ Π½ΡΠ»Ρ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΠΌΠ°Π»ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ React-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² Π½Π°ΡΠΈΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°Ρ ΡΡΠ΅Π±Π½ΠΎΠ³ΠΎ ΠΊΡΡΡΠ° ΠΏΠΎ React ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ create-react-app, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠ΅Π΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°Π±Π»ΠΎΠ½Π½ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ Π²ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ΅ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ²ΡΠΎΡ ΡΡΠ°ΡΡΠΈ, ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΌΡ ΠΏΡΠ±Π»ΠΈΠΊΡΠ΅ΠΌ ΡΠ΅Π³ΠΎΠ΄Π½Ρ, Ρ ΠΎΡΠ΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ React-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Babel ΠΈ Webpack. ΠΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ , ΡΠΎΠ·Π΄Π°Π²Π°Π΅ΠΌΡΡ ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ create-react-app, ΠΈ ΠΌΡ ΠΏΠΎΠ»Π°Π³Π°Π΅ΠΌ, ΡΡΠΎ Π²ΡΠ΅ΠΌ, ΠΊΡΠΎ ΠΈΠ·ΡΡΠ°Π΅Ρ React-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ, ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π½ΠΈΠΌΠΈ ΠΈ Ρ ΠΌΠ΅ΡΠΎΠ΄ΠΈΠΊΠΎΠΉ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ React-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² Π½Π° Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡΠ±ΠΎΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅. Π ΠΈΠΌΠ΅Π½Π½ΠΎ, ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°ΡΡ Webpack ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΡΠΎ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΎ Π±Ρ Babel Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ JSX-ΠΊΠΎΠ΄Π° Π² JavaScript-ΠΊΠΎΠ΄, ΠΈ ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ΅ΡΠ²Π΅Ρ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ React-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
Webpack
Webpack ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ JavaScript-ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΡΠΎΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ Β«Π±Π°Π½Π΄Π»Π΅ΡΠΎΠΌΒ» (ΠΎΡ bundler) ΠΈΠ»ΠΈ Β«ΡΠ±ΠΎΡΡΠΈΠΊΠΎΠΌ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉΒ». ΠΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ ΠΈΠ»ΠΈ Π΅Π³ΠΎ API. ΠΡΠ»ΠΈ Π²Ρ Π½Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ Webpack β ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΠΎΡΠΈΡΠ°ΡΡ ΠΎΠ± ΠΎΡΠ½ΠΎΠ²Π½ΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ Π΅Π³ΠΎ ΡΠ°Π±ΠΎΡΡ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΅Π³ΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΠ±ΠΎΡΡΠΈΠΊΠ°ΠΌΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ. ΠΠΎΡ ΠΊΠ°ΠΊ, Π½Π° Π²ΡΡΠΎΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠΎ, ΡΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Webpack.
Webpack Π±Π΅ΡΡΡ Π²ΡΡ, ΠΎΡ ΡΠ΅Π³ΠΎ Π·Π°Π²ΠΈΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ ΡΡΠΎ Π² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΡ. Π£ΠΏΠ°ΠΊΠΎΠ²ΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ β ΡΡΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π±ΡΠ°ΡΠ·Π΅ΡΠΎΠ² ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΠ²Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π°Π³ΡΡΠ·ΠΊΠ΅ ΡΠ΅ΡΡΡΡΠΎΠ². ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ ΡΡΠ°ΡΠΈΠΊ, ΠΎΡΠΏΡΠ°Π²Π»ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ Π»ΠΈΡΡ ΡΠΎ, ΡΡΠΎ Π΅ΠΌΡ Π½ΡΠΆΠ½ΠΎ. Π ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Webpack ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΠΊΡΡ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ Π»ΠΈΡΡ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, ΡΡΠΎ, Π² ΠΈΡΠΎΠ³Π΅, ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡ ΠΊ ΡΡΠΊΠΎΡΠ΅Π½ΠΈΡ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΡΠ°ΠΉΡΠΎΠ².
Babel
Babel β ΡΡΠΎ ΡΡΠ°Π½ΡΠΏΠΈΠ»ΡΡΠΎΡ, ΠΊΠΎΡΠΎΡΡΠΉ, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΏΡΠΈΠ½ΡΡΡΡ Π² ΡΠ²Π΅ΠΆΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ECMAScript, Π² Π²ΠΈΠ΄, ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΊΠ°ΠΊ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ, ΡΠ°ΠΊ ΠΈ Π½Π΅ ΡΠ°ΠΌΡΠΌ Π½ΠΎΠ²ΡΠΌ Π±ΡΠ°ΡΠ·Π΅ΡΠ°ΠΌ ΠΈ Π΄ΡΡΠ³ΠΈΠΌ ΡΡΠ΅Π΄Π°ΠΌ, Π² ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡΡΡ JavaScript. Babel, ΠΊΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΠΌΠ΅Π΅Ρ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²ΡΠ²Π°ΡΡ Π² JavaScript ΠΈ JSX-ΠΊΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ @babel/preset-react.
ΠΠΌΠ΅Π½Π½ΠΎ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ Babel ΠΌΡ, ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ JSX. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΎΡ ΠΊΠΎΠ΄, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ JSX:
ΠΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎ, ΠΎΠ½ ΠΏΠΎΠ½ΡΡΠ΅Π½, Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΡΠΈΡΠ°ΡΡ ΠΈ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ»ΡΠ΄Ρ Π½Π° Π½Π΅Π³ΠΎ, ΡΡΠ°Π·Ρ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΎΠ½ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, Π²ΠΎΠ·Π²ΡΠ°ΡΠ°ΡΡΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΎΡΡΠΌ ΠΎΡΠ΅Π²ΠΈΠ΄Π½Ρ.
ΠΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΎΠ΅ΠΊΡ React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΠΌ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΡΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ npm-ΠΌΠΎΠ΄ΡΠ»ΠΈ.
ΠΠΎΡΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π·Π΄Π΅ΡΡ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² ΡΡΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Webpack
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ entry Π·Π°Π΄Π°ΡΡ Π³Π»Π°Π²Π½ΡΠΉ ΡΠ°ΠΉΠ» Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π° mode ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΈΠΏ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ (Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ β development ) ΠΈ Π½Π° ΡΠΎ, ΠΊΡΠ΄Π° Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ».
Π Π°Π±ΠΎΡΠ° Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ
Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠΌ root ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΠ°ΠΊΠ΅ΡΡ react ΠΈ react-dom:
ΠΠ½Π΅ΡΡΠΌ Π² index.js ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄:
ΠΡΠΎ β ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ ΠΊΠΎΠ΄ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π’ΡΡ ΠΌΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌ ΡΠ°ΠΉΠ» ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΡΠ΅Π³
ΠΠΎΡ ΠΊΠΎΠ΄ ΡΠ°ΠΉΠ»Π° app.component.js :
ΠΠΎΡ ΠΊΠΎΠ΄ ΡΠ°ΠΉΠ»Π° app.component.css :
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Babel
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌ Babel Π±ΡΠ΄Π΅Ρ Π·Π½Π°ΡΡ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΏΡΠ΅ΡΠ΅ΡΡ Π΅ΠΌΡ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΡΡΠΎΠΈΠΌ Webpack Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Babel.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Webpack Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ Babel
Π’ΡΡ ΠΌΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ babel-loader, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Babel Ρ Webpack. Π€Π°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΠ΅ΡΡ ΠΈΠ΄ΡΡ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Babel ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΠ΅ΡΠ΅Ρ Π²Π°ΡΡΠ²Π°ΡΡ ΠΈ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΡΠ°ΠΉΠ»Ρ Π΄ΠΎ ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Webpack.
βJS-ΡΠ°ΠΉΠ»Ρ
ΠΠΎΡ ΠΏΡΠ°Π²ΠΈΠ»Π°, ΠΊΠ°ΡΠ°ΡΡΠΈΠ΅ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ JS-ΡΠ°ΠΉΠ»Π°ΠΌΠΈ (ΡΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΠΎΠΉΠ΄ΡΡ Π² ΡΠ°ΠΉΠ» webpack.config.js ), ΠΎΠ½ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ²ΠΎΠΉΡΡΠ² ΠΎΠ±ΡΠ΅ΠΊΡΠ° Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ, ΡΠΊΡΠΏΠΎΡΡΠΈΡΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΡΠΈΠΌ ΡΠ°ΠΉΠ»ΠΎΠΌ:
βCSS-ΡΠ°ΠΉΠ»Ρ
ΠΠΎΠ±Π°Π²ΠΈΠΌ Π² ΠΌΠ°ΡΡΠΈΠ² rules ΠΎΠ±ΡΠ΅ΠΊΡΠ° module Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ CSS-ΡΠ°ΠΉΠ»ΠΎΠ²:
βΠ‘ΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΡΡΡΡΡ
ΠΡΠ»ΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π²ΡΡΡΠ΅ΡΠΈΡ ΡΠ°ΠΉΠ» Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ PNG, SVG, JPG ΠΈΠ»ΠΈ GIF, ΡΠΎ Π΄Π»Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°ΠΊΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ file-loader. ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° ΡΠ°ΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π²Π°ΠΆΠ½Π° Π΄Π»Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΡΠ΅ΡΠ²Π΅ΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ
ΠΠΎΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΠ°ΠΉΠ»Π° webpack.config.js :
Π‘Π΅ΠΉΡΠ°Ρ Π²ΡΡ Π³ΠΎΡΠΎΠ²ΠΎ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ ΡΠ΅ΡΠ²Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
ΠΡΠ»ΠΈ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://localhost:9000, ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
Π‘ΡΡΠ°Π½ΠΈΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» index.html Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅ ΠΈ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²ΠΈΠ΄Π΅ΡΡ, Π·Π°ΠΏΡΡΡΠΈΠ² ΡΠ΅ΡΠ²Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://localhost:9000.
ΠΡΠΎΠ³ΠΈ
Π ΡΡΠΎΠΌ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π΅ ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½ ΠΎΠ±Π·ΠΎΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Webpack ΠΈ Babel Π΄Π»Ρ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π² React-ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ . ΠΠ° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Π½Π° ΡΠΎΠΉ Π±Π°Π·Π΅, ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ CSS ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ LESS, Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎ JS ΠΏΠΈΡΠ°ΡΡ Π½Π° TypeScript. ΠΡΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΌΠΈΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄ΡΡΠ³ΠΎΠ΅. ΠΠΎΠ½Π΅ΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΡΠΎΡΡΠΎΡΠ»ΠΎΡΡ Π²Π°ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡΡΠ²ΠΎ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎΠΉ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ React-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡΡΡ, ΡΡΠΎ Π²ΡΡ ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΡΠ»ΠΎΠΆΠ½ΠΎ ΠΈ ΠΊΡΠ΄Π° Π»Π΅Π³ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π³ΠΎΡΠΎΠ²ΡΠΌ ΡΠ°Π±Π»ΠΎΠ½ΠΎΠΌ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π² ΡΡΠΎΠΌ ΡΠ°Π·Π±Π΅ΡΡΡΠ΅ΡΡ, Π²Ρ ΠΏΠΎΠΉΠΌΡΡΠ΅, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π΄Π°ΡΡ Π²Π°ΠΌ Π±ΠΎΠ»ΡΡΡΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΡΠ²ΠΎΠΈ ΠΏΡΠΎΠ΅ΠΊΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π²Π°ΠΌ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ, Π½Π΅ ΠΏΠΎΠ»Π°Π³Π°ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π° Π½Π΅ΠΊΠΈΠ΅ Β«ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅Β» ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ ΡΠ½ΠΈΠ·ΠΈΠ² ΡΠ²ΠΎΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡ ΠΎΡ Π½ΠΈΡ .
Π£Π²Π°ΠΆΠ°Π΅ΠΌΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ! ΠΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π²Ρ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ ΠΏΡΠΈ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ΅ ΡΠ°Π±ΠΎΡΠ΅ΠΉ ΡΡΠ΅Π΄Ρ Π΄Π»Ρ React-ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ²?
ΠΠ°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ React ΡΡΠ΅Π΄Ρ, ΡΠ°ΡΡΡ 4
Russian (PΡΡΡΠΊΠΈΠΉ) translation by Anton L (you can also view the original English article)
Π Π°Π½ΡΡΠ΅ React Π±ΡΠ» ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠ΅ΠΌ, ΡΡΠΎ Π½Π° Π½ΡΠΌ Π±ΡΠ»ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°ΡΠΈΡΠ½ΠΎ Π½Π°ΡΠ°ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. ΠΡΡ ΡΡΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π΄ΠΎ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ Π½Π°ΠΏΠΈΡΠΈΡΠ΅ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ React ΠΊΠΎΠ΄Π°.
ΠΠ½ΡΡΡΡΠΌΠ΅Π½Ρ create-react-app Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΠΎΠΌΠΎΠ³ Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, ΡΠ΅ΠΏΠ΅ΡΡ Π»ΡΠ±ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠ°Π±ΠΎΡΠ΅Π΅ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ -Π»ΠΈΠ±ΠΎ Π·Π½Π°Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΡΠ±ΠΎΡΠΊΠΈ. create-react-app ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π΅ΡΠ»ΠΈ Π²Ρ Π½ΠΎΠ²ΠΈΡΠΎΠΊ Π² React.
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ ΡΡΠ°Π½Π΅ΡΠ΅ Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΡΠ½ΡΠΌ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ React, Ρ Π²Π°Ρ ΠΌΠΎΠ³ΡΡ ΠΏΠΎΡΠ²ΠΈΡΡΡΡ ΡΠ²ΠΎΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΠΈ Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΊΠ°ΡΡΠΎΠΌΠ½Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π·Π½Π°ΡΡ ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ create-react-app ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΡΡΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ.
Π ΡΡΠΎΠΌ ΡΡΡΠΎΡΠΈΠ°Π»Π΅ Ρ ΠΏΠΎΠΊΠ°ΠΆΡ Π²Π°ΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React, ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠΎΠ²Π°Π² ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ. ΠΠ°Π΄Π΅ΡΡΡ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎ Ρ Π²Π°Ρ ΠΏΠΎΡΠ²ΠΈΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠΌΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ.
ΠΠΎ Π½Π°ΡΠ°Π»Ρ ΡΡΠ° Π·Π°Π΄Π°ΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ ΠΏΡΠ³Π°ΡΡΠ΅ΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²Ρ ΠΎΡΠ΅Π½ΠΈΡΠ΅ Π²ΡΠ΅ ΠΏΠ»ΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ. ΠΡ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅ΡΠΈΡΡ Π΄Π»Ρ ΡΠ΅Π±Ρ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ°Π·Π»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΊ ΠΏΡΠΎΠ΅ΠΊΡΡ. ΠΠ°Π½Π½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ Ρ Π»ΡΠ³ΠΊΠΎΡΡΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²Π»ΡΡΡΡΡ ΠΊΠ°ΠΆΠ΄ΡΠΉ Π΄Π΅Π½Ρ.
ΠΡ Π³ΠΎΡΠΎΠ²Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π²Π°ΡΠ΅ ΠΏΠ΅ΡΠ²ΠΎΠ΅ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ Π½ΡΠ»Ρ? ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ.
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π§ΡΠΎΠ±Ρ ΠΏΡΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ±ΠΎΡΠΊΠΈ React, ΠΌΡ ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅, ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠ΅, React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠ°ΠΊ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ ΡΡΡΠΎΡΠΈΠ°Π»Π°Ρ ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ.
ΠΡΠ»ΠΈ Π²Ρ Π²ΡΠ±ΡΠ°Π»ΠΈ Π²ΡΠ΅ ΠΎΠΏΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, package.json Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ Π½Π°Π΄ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ React ΠΈ ReactDOM ΡΠΊΡΠΈΠΏΡΡ Π² Π½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΡ ΡΠ΄Π΅Π»Π°Π΅ΠΌ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ npm, ΠΏΠ°ΠΊΠ΅ΡΠ½ΡΠΉ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ Node.js.
Π ΡΠΎΠΉ ΠΆΠ΅ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ, Π²Π²Π΅Π΄ΠΈΡΠ΅:

ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ°ΠΉΠ» index.html, ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ Π² ΡΡΡ ΠΆΠ΅ ΠΏΠ°ΠΏΠΊΡ:
ΠΠ°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² ΠΎΠ΄ΠΈΠ½ JavaScript ΡΠ°ΠΉΠ» ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΡΠΎΠΌ JSX, ES6 ΠΊΠ»Π°ΡΡΡ ΠΈ ΠΌΠΎΠ΄ΡΠ»ΠΈ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΌΠΎΠ΄ΡΠ»ΠΈ Webpack ΠΈ Babel, ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ npm.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠΏΠ΅ΡΠ²Π° ΠΏΠΎΡΡΠ°Π²ΠΈΠΌ Babel. ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ Π² ΠΎΠΊΠ½Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
ΠΡΠ΄ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ Π΄Π»Ρ Babel, ΡΡΠΎΠ±Ρ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ES6 ΠΈ JSX ΠΊΠΎΠ΄, Π² ΠΎΠ±ΡΡΠ½ΡΠΉ JavaScript.
Π’Π΅ΠΏΠ΅ΡΡ Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ Webpack, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ:
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π±ΡΠ΄ΡΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ Π½ΠΎΠ²ΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, Π½Π°Ρ package.json ΡΠ°ΠΉΠ» Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π·Ρ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ (ΡΠΎ Π΅ΡΡΡ ΡΠ±ΠΎΡΠΊΠΈ), Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π‘ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ (ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ React ΠΈ ReactDOM) ΡΠ²Π»ΡΡΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠΌΠΈ Π²ΠΎ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π΄ΠΎΠΏΡΡΡΠΈΠΌ Π½Π° ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠΌ ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΠΈ Π±ΡΠ΄ΡΡ Π½ΡΠΆΠ½Ρ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΠΈΡΠΎΠ³Π΅ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π½Π°ΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Webpack
Webpack Π½Π°ΠΌ Π½ΡΠΆΠ΅Π½, ΡΡΠΎΠ±Ρ Π΄Π΅Π»Π°ΡΡ ΡΡΠΈ Π²Π΅ΡΠΈ
ΠΠ΅ ΡΡΠΎΠΈΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ Π½Π° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ; ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ΡΡ ΠΈ ΠΏΠΎΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ.
Π‘Π±ΠΎΡΠΊΠ° ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΠΎ, Π΅ΡΠ»ΠΈ Π²Ρ Π΄ΠΎ ΡΡΠΎΠ³ΠΎ ΡΠΈΡΠ°Π»ΠΈ ΡΡΡΠΎΡΠΈΠ°Π»Ρ ΠΈΠ· ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ.
ΠΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, Π·Π°ΠΏΡΡΡΠΈΡΠ΅:

ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° JavaScript ΡΠ°ΠΉΠ», ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Π»Ρ Π½Π°Ρ ΠΈ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π±ΡΠ» ΠΎΡΠΎΠ±ΡΠ°ΠΆΡΠ½ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ³ΠΎ DOM ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°.
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ Π½Π°ΡΠ½ΡΡΠ΅ Π΄Π΅Π»Π°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅, ΠΊΠ°ΠΊ ΡΡΠΎΠΌΠΈΡΠ΅Π»ΡΠ½ΠΎ Π²ΡΡΡΠ½ΡΡ ΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΉΠ», ΡΠΎΡ ΡΠ°Π½ΡΡΡ Π΅Π³ΠΎ, Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠ½ΠΎΠ²Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ±ΠΎΡΠΊΠΈ ΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ°, ΡΡΠΎΠ±Ρ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Webpack Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² ΡΠ°ΠΉΠ»Π°Ρ . ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»Π°Π΅ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ, Webpack Π±ΡΠ΄Π΅Ρ Π·Π°Π½ΠΎΠ²ΠΎ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠΆΠ°ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ°, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
Π€ΠΈΠ½Π°Π»ΡΠ½ΡΠ΅ ΡΡΡΠΈΡ ΠΈ Π΄Π»Ρ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π§ΡΠΎΠ±Ρ Π²ΡΡ Π±ΡΠ»ΠΎ Π³ΠΎΡΠΎΠ²ΠΎ. ΠΠ°Π²Π°ΠΉΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΄Π²Π° Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ ΡΡΡΠΎΡΠΈΠ°Π»Π°Ρ .
ΠΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠΎΡ ΠΆΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΡΠΎ ΠΈ ΡΠ°Π½ΡΡΠ΅, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π½Π° ΡΡΠΎΡ ΡΠ°Π· ΠΌΡ Π²ΡΡΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ ΡΠ±ΠΎΡΠΊΡ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
Π¨Π°Π±Π»ΠΎΠ½Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ React Π΄Π»Ρ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ
ΠΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π²Ρ Π²ΡΡΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠΈΠ»ΠΈ ΠΈ ΡΠΎΠ·Π΄Π°Π»ΠΈ ΡΠ°ΠΉΠ»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, Π²Π°ΠΌ Π½Π΅ ΠΏΡΠΈΠ΄ΡΡΡΡ Π΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠ½ΠΎΠ²Π° Ρ Π½ΡΠ»Ρ. ΠΠ»Ρ Π±ΡΠ΄ΡΡΠΈΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ, ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° React ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΡΡΡΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΈ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π°ΠΆΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½Π°Π±ΠΎΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ ΡΠ±ΠΎΡΠΎΠΊ Ρ ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Π½Π°Π΄ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΠΎΡ ΡΠ°Π½ΠΈΡΡ ΠΈΡ Π½Π° GitHub. ΠΠ°ΡΠ΅ΠΌ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΡΠΎΠ΅ΠΊΡΠ°, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ npm init Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ Node.js ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ.
Π‘ΠΊΠ°ΡΠ°ΠΉΡΠ΅ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡ
ΠΡΠΎΠ΅ΠΊΡ React ΠΈΠ· ΡΡΠΎΠ³ΠΎ ΡΡΡΠΎΡΠΈΠ°Π»Π° Π΄ΠΎΡΡΡΠΏΠ΅Π½, ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΅Π³ΠΎ ΡΠΊΠ°ΡΠ°ΡΡ ΠΈ ΠΏΠΎΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π½ΠΈΠΌ, Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠ°ΠΊ ΡΠ°Π±Π»ΠΎΠ½ Π΄Π»Ρ Π½ΠΎΠ²ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ².
ΠΠ²Π΅Π΄ΠΈΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π΄Π»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ΅ΡΠ²Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΊΠ°ΡΠ°Π΅Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ Node.js, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΡ, Π½Π° ΡΡΠΎ ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΌΠΈΠ½ΡΡΠ° ΠΈΠ»ΠΈ Π΄Π²Π΅. Π‘Π»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅Ρ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΡΡΡΠΈΡ ΠΌΠΈΠ½ΠΈ ΡΠ΅ΡΠ²Π΅Ρ, ΠΏΠΎΠΊΠ°Π·Π°Π² Π²Π°ΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π² Π±ΡΠ°ΡΠ·Π΅ΡΠ΅.
ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π² React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· ΡΠΎΡ ΡΠ°Π½ΠΈΠ² ΠΈΡ , Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠ½ΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΡΡΡ ΠΈ ΠΎΠΊΠ½ΠΎ Π±ΡΠ°ΡΠ·Π΅ΡΠ° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΎΠ±Π½ΠΎΠ²ΠΈΡΡΡ, ΠΎΡΠΎΠ±ΡΠ°Π·ΠΈΠ² Π½ΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠ³Π΄Π° Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ±ΡΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½ΠΈΡ, Π·Π°ΠΏΡΡΡΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΠ΅ΡΠΈΠΈ ΡΡΡΠΎΠΈΡΠ°Π»ΠΎΠ² ΠΌΡ ΠΏΠΎΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ², ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ React ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· Π½ΠΈΡ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΠΎΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π·Π°Π΄Π°Ρ. ΠΠΎ Π² ΠΈΡΠΎΠ³Π΅ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ ΠΈ Π³ΠΈΠ±ΠΊΠΎΡΡΠΈ, ΠΊΠ°ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π²Ρ ΠΎΡΠ²ΠΎΠΈΡΠ΅ΡΡ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΎΠΉ ΡΠ±ΠΎΡΠΊΠΈ React, Ρ Π΄ΡΠΌΠ°Ρ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ°Π΄ΡΠ΅Ρ Π²Π°Ρ. Π― Π±ΡΠ΄Ρ ΡΠ°Π΄ ΡΡΠ»ΡΡΠ°ΡΡ Π²Π°ΡΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ. ΠΠ°ΠΉΡΠ΅ ΠΌΠ½Π΅ Π·Π½Π°ΡΡ ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Ρ React!
ΠΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈ ΡΠ°Π·Π²Π΅ΡΠ½ΡΡΡ Full-Stack React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅
ΠΡΠΈΠ²Π΅Ρ, Π₯Π°Π±Ρ! ΠΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡ Π²Π°ΡΠ΅ΠΌ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ Β«How to Build and Deploy a Full-Stack React-AppΒ» Π°Π²ΡΠΎΡΠ° Frank Zickert.
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π»Π΅Π³ΠΊΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ, Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ΅ React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π‘ ΡΡΠΈΠΌΠΈ React-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠΈΡΡΡΡ Π½Π° Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΈ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΌ Π½Π΅ Π½ΡΠΆΠ½ΠΎ Π±Π΅ΡΠΏΠΎΠΊΠΎΠΈΡΡΡΡ ΠΎ Π΅Π³ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
Π₯ΠΎΡΠΈΡΠ΅ ΡΡΠ°ΡΡ full-stack ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠΌ? Full-stack ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΠΉ Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ React ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ ΠΈ Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½ΡΡ . ΠΠΎ ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠ΅Π±ΡΠ΅Ρ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π½Π°ΡΡΡΠΎΠ΅ΠΊ, ΡΠ΅ΠΌ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΎΠ΄Π½ΠΎΡΡΡΠ°Π½ΠΈΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ. ΠΡΠΈ React-ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π½Π°ΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π½Π°ΡΡ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠ½ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΊΠ°ΠΊ ΡΠ°ΡΡΡ Π½Π°ΡΠ΅Π³ΠΎ React-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΌ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π½ΡΠΆΠ½Ρ Π½ΠΈΠΊΠ°ΠΊΠΈΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Webpack, Babel ΠΈΠ»ΠΈ Serverless.
Π‘ΡΠ°ΡΡ
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΡΡ ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΡΡΠ΅ΠΌΡ ΡΠΏΠΎΡΠΎΠ±Π°ΠΌΠΈ:
Π‘ΠΊΡΠΈΠΏΡ ΡΠ±ΠΎΡΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π΅ΡΠ΅ ΡΡΠΈ ΡΠΊΡΠΈΠΏΡΠ° Π² package.json:
ΠΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΡΠΎΠ΅ΠΊΡΡ, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ, ΠΈΠΌΠ΅ΡΡ ΡΠ΅ΡΠΊΡΡ ΡΡΡΡΠΊΡΡΡΡ. Π£ Π²Π°Ρ Π΅ΡΡΡ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ. ΠΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΠΎΠ±ΡΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠ΄ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ (Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ) ΡΡΠΎΡΠ½ΡΡΡ(ΡΠ°ΡΡΠΈΡΡΡΡ) ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ.
ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠ΅ΡΡ dev ΠΈ prod Π²Π΅ΡΡΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΈ ΡΠ°Π·Π²Π΅ΡΡΡΠ²Π°ΡΡ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ.
β ΡΡΠΎ ΡΡΡΠ°Π½ΠΈΡΠ° Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ Π² react-router. ΠΠΎΡ ΡΡΡΠΎΡΠΈΠ°Π» ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΌΠ°ΡΡΡΡΡΠ°ΠΌΠΈ.
ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ ΡΡΠ½ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΅ΡΠ²Π΅ΡΠ°. ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΡ .
ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΠΊΠ°ΠΊ Express.js-middleware.
Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
NoSQL Π² Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ β ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΊΠ°ΠΊ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅. ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠΈΠΏ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
.
ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ β Π²ΡΠ΅, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½Π°ΡΠ΅Π³ΠΎ full-stack ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, Π½Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ: ΠΎΠ΄Π½Ρ ΡΡΠ΅Π΄Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΎΠ΄Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ°, Π΄Π²Π° ΡΠ΅ΡΠ²ΠΈΡΠ° ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ Π·Π°ΠΏΠΈΡΡΡ.
Π‘ΡΡΡΠΊΡΡΡΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ Π²Π°ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π§Π΅ΠΌ Π±ΠΎΠ»ΡΡΠ΅ ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ Π²Π°ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ΅ΠΌ Π²Π°ΠΆΠ½Π΅Π΅ ΡΡΠΎ.
ΠΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΠ°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΡΠΎΠ·Π΄Π°Π΅Ρ Amazon DynamoDB. ΠΡΠΎ Π±Π°Π·Π° Π΄Π°Π½Π½ΡΡ ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ (NoSQL). ΠΠ½Π° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΡΡΠΎΠΊΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π² Π»ΡΠ±ΠΎΠΌ ΠΌΠ°ΡΡΡΠ°Π±Π΅. ΠΠΎ Π² ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ ΡΠ΅Π»ΡΡΠΈΠΎΠ½Π½ΡΡ Π±Π°Π· Π΄Π°Π½Π½ΡΡ , ΠΎΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°ΠΏΡΠΎΡΡ.
ΠΠ±Π»Π°Π΄Π°Ρ ΡΡΠΈΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ, Π΄Π°Π²Π°ΠΉΡΠ΅ Π²Π·Π³Π»ΡΠ½Π΅ΠΌ Π½Π° Π½Π°Ρ :
ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΡΡΡΠΊΡΡΡΡ Π½Π°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ . ΠΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌ ΠΈΠΌΠ΅Π½Π° Π΄Π»Ρ Π½Π°ΡΠΈΡ primaryKey ΠΈ rangeKey. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΡΠ±ΠΎΠ΅ ΠΈΠΌΡ, ΠΊΡΠΎΠΌΠ΅ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΠΊΠ»ΡΡΠ΅Π²ΡΡ ΡΠ»ΠΎΠ² DynamoDB, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ. ΠΠΎ ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ, ΠΈΠΌΠ΅ΡΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ:
ΠΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ β ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°:
DataLayer ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π΄ΠΎΡΡΡΠΏ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΊ!
ΠΡΠΈΠ½Ρ ΡΠΎΠ½Π½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ mutate ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π² Π½Π°ΡΠ΅ΠΉ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ . ΠΡΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΊΠ»ΠΈΠ΅Π½ΡΠ° ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΡΡΠ°ΡΠΈΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ².
ΠΠ°Π½Π½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° β ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΊΡ Javascript, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΠΌΠ΅Π΅Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡ-Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. Π Π½Π°ΡΠ΅ΠΌ ΡΠ΅ΡΠ²ΠΈΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΡΡΠΎΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠ· ΡΠ΅Π»Π° Π·Π°ΠΏΡΠΎΡΠ°. ΠΠ»Ρ User ΠΎΠ±ΡΠ΅ΠΊΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΡΠΊΡΡΡΡ:
ΠΠΎΠ»ΡΡΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ
ΠΠΎΠ»ΡΡΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠ· Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ ΡΠ°ΠΊ ΠΆΠ΅ ΠΏΡΠΎΡΡΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΈΡ .
ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π½Π° ΡΠ²ΠΎΠ΅ Full-Stack ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ
ΠΡΠ»ΠΈ Π²Ρ Π΅ΡΠ΅ Π½Π΅ Π·Π°ΠΏΡΡΡΠΈΠ»ΠΈ ΡΠ²ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠ΅ΠΉΡΠ°Ρ ΡΠ°ΠΌΠΎΠ΅ Π²ΡΠ΅ΠΌΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ: npm run start-
ΠΡΠΎΡ ΠΏΠΎΡΡ Π½Π΅ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π²Ρ Π²Π²ΠΎΠ΄ΠΈΡΠ΅ Π΄Π°Π½Π½ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΠ΅ Π² Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ , ΠΈ ΠΊΠ°ΠΊ Π²Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ. callAddUserService ΠΈ callGetUserService ΠΈΠ½ΠΊΠ°ΠΏΡΡΠ»ΠΈΡΡΡΡ Π²ΡΠ΅, ΡΡΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ Π΄Π»Ρ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² ΠΈ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ . ΠΡ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΠ΅ ΡΡΠ΄Π° ΠΎΠ±ΡΠ΅ΠΊΡ Javascript ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΠ΅ Π΅Π³ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ.
ΠΡ Π½Π°ΠΉΠ΄Π΅ΡΠ΅ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ° Π² ΡΡΠΎΠΌ GitHub-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ. ΠΠ½ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° 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.














