prettier Π½Π΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄
Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Prettier Π² Visual Studio Code
Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° β Π·Π°Π΄Π°ΡΠ° Π½Π΅ ΠΈΠ· ΠΏΡΠΎΡΡΡΡ , Π½ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΡΡΠ½ΠΎΡΡΡ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ Π±Π°Π·Ρ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.
ΠΠ°Π½Π½ΡΠΉ ΠΌΠ°Π½ΡΠ°Π» Π½Π°ΡΡΠΈΡ Π²Π°Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Prettier, ΠΊΠΎΡΠΎΡΡΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ Π² Visual Studio Code (ΠΈΠ»ΠΈ VS Code)
ΠΠ»Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΈ ΠΌΡ Π²ΠΎΠ·ΡΠΌΠ΅ΠΌ ΡΠ°ΠΊΠΎΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π°:
ΠΡΠ»ΠΈ Π²Ρ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π°, Π²Ρ Π·Π°ΠΌΠ΅ΡΠΈΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΈΠ±ΠΎΠΊ:
Π’ΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ
1: ΠΠΎΠΌΠ°Π½Π΄Π° Format Document
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠ² ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ Prettier, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π΄Π»Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΊΠΎΠ΄Π°. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Format Document. ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΄Π΅Π»Π°Π΅Ρ Π²Π°Ρ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΌ ΠΏΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°ΠΌ, ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠ°ΠΌ ΡΡΡΠΎΠΊ ΠΈ ΠΊΠ°Π²ΡΡΠΊΠ°ΠΌ.
Π§ΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΡΡ ΠΏΠ°Π½Π΅Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄, Π½Π°ΠΆΠΌΠΈΡΠ΅ Command+Shift+P Π² macOS ΠΈΠ»ΠΈ Ctrl+Shift+P Π² Windows.
Π ΠΏΠ°Π»ΠΈΡΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ format, Π° Π·Π°ΡΠ΅ΠΌ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Format Document.
ΠΠ°ΡΠ΅ΠΌ ΠΏΠ°Π½Π΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ Π²Π°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΡΠΌΠ°Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π½ΡΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π°ΠΆΠΌΠΈΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΡ Configure.
ΠΠ°ΡΠ΅ΠΌ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Prettier β Code Formatter.
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡΠ»ΠΈ ΠΏΠ°Π½Π΅Π»Ρ Π½Π΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΠ»Π° Π²Π°ΠΌ Π²ΡΠ±ΡΠ°ΡΡ ΡΠΎΡΠΌΠ°Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π΅Π³ΠΎ Π²ΡΡΡΠ½ΡΡ Π² Settings. Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ Π² Editor: Default Formatter Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ebsenp.prettier-vscode.
Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠΎΠ΄ Π±ΡΠ΄Π΅Ρ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ Ρ ΡΡΠ΅ΡΠΎΠΌ Π²ΡΠ΅Ρ ΠΏΡΠΎΠ±Π΅Π»ΠΎΠ², ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΎΠ² ΡΡΡΠΎΠΊ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΠΊΠ°Π²ΡΡΠ΅ΠΊ:
ΠΡΠΎ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π΄Π»Ρ ΡΠ°ΠΉΠ»ΠΎΠ² CSS. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ ΠΊΠΎΠ΄ Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ°ΡΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΌΠΈ ΡΠΊΠΎΠ±ΠΊΠ°ΠΌΠΈ, ΡΠΎΡΠΊΠ°ΠΌΠΈ Ρ Π·Π°ΠΏΡΡΠΎΠΉ ΠΈ ΡΠ°Π·Π±ΠΈΠ²ΠΊΠΎΠΉ Π½Π° ΡΡΡΠΎΠΊΠΈ Π² Ρ ΠΎΡΠΎΡΠΎ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ». ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄:
ΠΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ ΡΠ°ΠΊ:
body <
color: red;
>
h1 <
color: purple;
font-size: 24px;
>
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ ΠΈΠ·ΡΡΠΈΠ»ΠΈ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π΅Π΅ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
2: Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ
ΠΠΎΠΊΠ° ΡΡΠΎ Π½Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΠ»ΠΎΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π²ΡΡΡΠ½ΡΡ. Π§ΡΠΎΠ±Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎΡ ΠΏΡΠΎΡΠ΅ΡΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π² VS Code, ΠΈ ΡΠΎΠ³Π΄Π° Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ Π±ΡΠ΄ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ. Π’Π°ΠΊΠΆΠ΅ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ Π½Π΅ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π²Π΅ΡΡΠΈΠΉ.
Π§ΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, Π½Π°ΠΆΠΌΠΈΡΠ΅ Command+ Π² MacOS ΠΈΠ»ΠΈ Ctrl+ Π² Windows. ΠΡ ΠΏΠΎΠΏΠ°Π΄Π΅ΡΠ΅ Π² ΠΌΠ΅Π½Ρ Settings. ΠΡΠΊΡΡΠ² ΡΡΠΎ ΠΌΠ΅Π½Ρ, Π½Π°ΠΉΠ΄ΠΈΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Editor: Format On Save ΠΈ Π²ΡΠ±Π΅ΡΠΈΡΠ΅ Π΅Π³ΠΎ, ΠΏΠΎΡΡΠ°Π²ΠΈΠ² Π³Π°Π»ΠΎΡΠΊΡ.
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, Π° ΠΎΠ½ Π±ΡΠ΄Π΅Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΠ°ΠΉΠ»Π°.
3: ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ Prettier
Prettier Π΄Π΅Π»Π°Π΅Ρ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π½ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ, ΠΎΡΡΠ΅Π΄Π°ΠΊΡΠΈΡΠΎΠ²Π°Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ.
ΠΡΠΊΡΠΎΠΉΡΠ΅ ΠΌΠ΅Π½Ρ Settings ΠΈ Π½Π°ΠΉΠ΄ΠΈΡΠ΅ Prettier. ΠΠ° Π²Π°ΡΠ΅ΠΌ ΡΠΊΡΠ°Π½Π΅ ΠΏΠΎΡΠ²ΡΡΡΡ Π²ΡΠ΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Prettier, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ.
ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠ΅Π½ΡΡΡ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ:
ΠΠ»Π°Π²Π½ΡΠΉ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΠΊ Π²ΡΡΡΠΎΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅Π½Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ Π² VS Code β ΡΡΠΎ ΡΠΎ, ΡΡΠΎ ΠΎΠ½ΠΎ Π½Π΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΠΈ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅.
4: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Prettier
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π²Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Prettier Π² ΡΠ²ΠΎΠ΅ΠΌ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ΅ VS Code, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ Π΄ΡΡΠ³ΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΄Π»Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°.
ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² ΡΠΎΡΠΌΠ°ΡΠ΅ JSON:
<
«trailingComma»: «es5»,
«tabWidth»: 4,
«semi»: false,
«singleQuote»: true
>
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ ΡΠ°ΠΉΠ»Π°Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ Prettier. Π‘ΠΎΠ·Π΄Π°Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΊΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΡΠΎΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π² Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ Π²ΡΠ΅ ΡΠ»Π΅Π½Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ Π²Π°ΡΠ΅ΠΉ Π±Π°Π·Ρ ΠΊΠΎΠ΄Π° ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎ. ΠΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΏΡΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ, ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅ Π½Π°Π΄ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ. Π‘ΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π² ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΉ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΡΡΠΈΡΡ Ρ ΡΠ΄ΠΎΠ±ΠΎΡΠΈΡΠ°Π΅ΠΌΠΎΡΡΠΈ ΠΈ ΠΏΡΠΎΡΡΠΎΡΡ ΠΊΠΎΠ΄Π°. Π’ΠΎΠ³Π΄Π° Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠ²ΡΡΠΈΡΡ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΡΡ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ.
Prettier ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΠΊΠΎΠ΄Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Eslint + Prettier
Π ΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π΄Π»Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ° ΡΠ·ΡΠΊΠ° JavaScript. Π Π°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΏΡΠΎ ΡΡΠΈΠ»ΠΈΡΡ Eslint ΠΈ Prettier.
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° Π»ΠΈΠ½ΡΠ΅ΡΠ° ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ Π΅Π³ΠΎ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΠ°ΠΊΠΎΠΉ ΡΠ΅Π»ΠΈ Ρ Ρ ΠΎΡΡ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡΡ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅?
ΠΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ Π±ΡΡΡΡΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡ ΠΈ Π»ΡΡΡΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ°ΠΊΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΡΠ΅ΡΠ°Π΅Ρ eslint?
ΠΠΈΠ½ΡΠ΅Ρ β ΡΡΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ Π΄Π»Ρ ΡΠ·ΡΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΠ½ ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΎ ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΡΠ½ΠΎ ΠΎΠΏΠ°ΡΠ½ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡΡ Π² ΠΊΠΎΠ΄Π΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π°Π²Π°ΡΠΈΠΉΠ½ΠΎΠΌΡ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. Π’Π°ΠΊΠΆΠ΅ Π»ΠΈΠ½ΡΠ΅Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠΎΠ±ΡΠΈΡΡ ΠΎΠ± ΡΡΡΠ°ΡΠ΅Π²ΡΠΈΡ ΡΡΠ°ΡΡΠΊΠ°Ρ ΠΊΠΎΠ΄Π°, ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΡΠΈΠ±ΠΊΠ°Ρ ΠΈ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ . ΠΡΠ΅Π³ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΎΠΊΠΎΠ»ΠΎ 300 ΠΏΡΠ°Π²ΠΈΠ», ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡΡΠΈΡΡ/Π²ΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΠΎ ΠΆΠ΅Π»Π°Π½ΠΈΡ.
ΠΠ»Ρ ΡΠ΅Π³ΠΎ ΡΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡΠΆΠ΅Π½ Prettier?
ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΠΉΡΠ΅ΡΡ:
Π ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π³ΠΎΠ²ΠΎΡΡΡ, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΡΠΈΡΡΡΡ Π΄Π°ΠΆΠ΅ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΎΡΡΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π½Π° ΠΌΠ΅ΡΡΠ΅. Π Π°Π·Π²ΠΈΠ²Π°ΠΉΡΠ΅ΡΡ Ρ Π½Π°ΠΌΠΈ β Π½Π° Π₯Π΅ΠΊΡΠ»Π΅ΡΠ΅ Π΅ΡΡΡ ΡΠΎΡΠ½ΠΈ ΠΊΡΡΡΠΎΠ² ΠΏΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π° ΡΠ°Π·Π½ΡΡ ΡΠ·ΡΠΊΠ°Ρ ΠΈ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡ .
ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅
ΠΠ°ΡΠ½Ρ Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ Π·Π΄Π΅ΡΡ ΠΎΠΏΠΈΡΠ°Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π»ΠΈΠ½ΡΠ΅ΡΠ° Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ VScode. ΠΠ»Ρ Π΄ΡΡΠ³ΠΈΡ IDE Π±ΡΠ΄Π΅Ρ ΡΠ°Π·Π½ΠΈΡΠ° ΡΠΎΠ»ΡΠΊΠΎ Π² ΠΏΠΎΠΈΡΠΊΠ΅ Π½ΡΠΆΠ½ΡΡ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠΉ. ΠΡΠ°ΠΊ:
ΠΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ½ΡΡΡ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΡΠ½ΠΊΡ ΠΌΠ΅Π½Ρ Π·Π° ΡΡΠΎ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ. ΠΡΠΎΠ³ΠΎΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ²Π»ΡΡΡΡΡ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΡΠ°ΠΉΠ» .eslintrc.json. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ°ΠΉΠ» Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΠΈ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡ Π΅Π³ΠΎ Π½Π° ΠΎΠ΄ΠΈΠ½ ΡΡΠΎΠ²Π΅Π½Ρ Ρ package.json.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π½Π°ΡΠ° ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΡΠ°Π±ΠΎΡΠ°Π»Π°, Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ:
ΠΡΠΈΠΌΠ΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ESLint:
[0]=off // Π²ΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ
[1]=warn // Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½ΡΠΎΠ»Ρ
[2]=error // Π²ΡΠ²ΠΎΠ΄ΠΈΡ error ΠΈ ΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΈΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ
*ΠΡΠ°Π²ΠΈΠ»Π° ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°. ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π½Π°ΡΡΡΠΎΠ΅ΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΠΉΡΠΈ Π·Π΄Π΅ΡΡ.
Π§ΡΠΎΠ±Ρ ΠΈΡΠΊΠ»ΡΡΠΈΡΡ ΠΈΠ· ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΠΈ/ΡΠ°ΠΉΠ»Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΠΌ ΠΈΡ Π² Π²ΠΈΠ΄Π΅ ΡΠΏΠΈΡΠΊΠ°
ΠΡΠ½ΠΎΠ²Π½Π°Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Π°. Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ ΡΠ°ΠΉΠ»Π° Π½Π°ΡΠ° IDE ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π»Π° ΠΊΠΎΠ΄ ΠΈ ΠΈΡΠΏΡΠ°Π²Π»ΡΠ»Π° ΠΎΡΠΈΠ±ΠΊΠΈ. Π‘ΡΠΎΠΈΡ ΡΡΠΎΡΠ½ΠΈΡΡ, ΡΡΠΎ ESLint ΡΠΌΠ΅Π΅Ρ ΠΈΡΠΏΡΠ°Π²Π»ΡΡΡ Π½Π΅ Π²ΡΡ ΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π²Π°ΠΌ ΠΏΡΠΈΠ΄Π΅ΡΡΡ ΠΏΡΠ°Π²ΠΈΡΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ Π²ΡΡΡΠ½ΡΡ.
ΠΠ»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ
Tip. ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΡΠ°Π±ΠΎΡΡ Ρ ESLint, ΠΏΠ΅ΡΠ΅ΠΉΠ΄ΠΈΡΠ΅ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡ Output ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π²ΡΠ²ΠΎΠ΄ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ°Ρ .
TROUBLESHOOTING
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π§Π°ΡΡΠΎ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ ΠΊΠΎΠ½ΡΠΈΠ³ ΠΎΡ Airbnb. ΠΠ½ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ» ΠΈ ΠΌΠΎΠΆΠ΅Ρ Π²Π°Ρ Π·Π°ΠΏΡΡΠ°ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΡ ΠΊ Π½Π΅ΠΌΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΏΠΎΡΠ»Π΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΡΡΠ²ΠΎΠΈΡΠ΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΡΠ°Π±ΠΎΡΡ Π»ΠΈΠ½ΡΠ΅ΡΠ°. Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ Π΄ΠΎΡΠΈΡΠ°Π»ΠΈ Π΄ΠΎ ΠΊΠΎΠ½ΡΠ°. Π Π°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠ΅ΠΏΠ΅ΡΡ Π±ΡΠ΄Π΅Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΡΡΠ½ΠΎ ΠΈ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅.
ΠΡΠΎΠΊΠ°ΡΠΈΠ²Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΉ ΡΡΠΎΠ²Π΅Π½Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ:
ΠΠ° Π₯Π΅ΠΊΡΠ»Π΅ΡΠ΅ Π΅ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΡΠ΅ΠΊΠΎΠ² β ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΡ ΠΊΡΡΡΠΎΠ² Π΄Π»Ρ ΠΎΠΏΡΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΊΠΎΠΌΠΏΠ΅ΡΠ΅Π½ΡΠ½ΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π² ΡΠ°Π·Π½ΡΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡΡ .
Π‘ Π½ΡΠ»Ρ Π΄ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌ Π΄Π΅Π½ΡΠ³ΠΈ, Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠ΄Π°Π»ΠΎΡΡ Π½Π°ΠΉΡΠΈ ΡΠ°Π±ΠΎΡΡ.
Prettier, ESLint, Husky, Lint-Staged ΠΈ EditorConfig: ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°
ΠΡ ΡΡΡΠ΅ΠΌΠΈΡΠ΅ΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΠΏΠΈΡΠ°ΡΡ Π°ΠΊΠΊΡΡΠ°ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, Π½ΠΎ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅ Ρ ΡΠ΅Π³ΠΎ Π½Π°ΡΠ°ΡΡβ¦ ΠΡ Π²ΡΠΈΡΡΠ²Π°Π΅ΡΠ΅ΡΡ Π² ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° ΠΏΠΎ ΡΡΠΈΠ»Ρ, Π²ΡΠΎΠ΄Π΅ ΡΡΠΎΠ³ΠΎ ΠΎΡ Airbnb, ΡΡΠ°ΡΠ°Π΅ΡΠ΅ΡΡ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌ Π²Π΅Π΄ΡΡΠΈΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΡΡΠΎΠ²β¦ ΠΠ°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠ΄Π°Π»ΡΡΡ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠΉ ΠΊΠΎΠ΄? ΠΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΈΡΠΊΠ°ΡΡ Π½Π΅Π½ΡΠΆΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅? ΠΡ ΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ Π²ΡΡΠ²Π»ΡΡΡ Π½Π΅ΡΠ΄Π°ΡΠ½ΡΠ΅ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ, ΠΏΡΠΈΠΌΠ΅Π½ΡΠ½Π½ΡΠ΅ Π² Π²Π°ΡΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ°Ρ ? ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ β Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠΎΠ½ΡΡΡ, ΡΠΈΡΠ°Ρ Ρ ΠΈΡΡΠΎΡΠΏΠ»Π΅ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π½Π΅ΠΊΠΎΠ΅ΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ, Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΡ Π»ΠΈ ΠΎΠ½Π° ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΈΠ»ΠΈ Π½Π΅Ρ. ΠΠ²ΡΡΠΈΡ Π·Π½Π°ΠΊΠΎΠΌΠΎ? ΠΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΡΠΆΠ΅Π»ΠΎ ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ ΡΡΠΏΠ΅Π²Π°ΡΡ, ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠΌΡ ΡΡΠΈΡΡΡΡ.
ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²Ρ β ΡΠΈΠΌΠ»ΠΈΠ΄, ΠΏΠΎΠ΄ Π½Π°ΡΠ°Π»ΠΎΠΌ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΡΡΠ΄ΠΈΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² ΡΠ°Π·Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ? Π Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π΅ΡΡΡ Π½ΠΎΠ²ΡΠ΅ Π»ΡΠ΄ΠΈ? ΠΠ΅ΡΠΏΠΎΠΊΠΎΠΈΡ Π»ΠΈ Π²Π°Ρ ΡΠΎ, ΡΡΠΎ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ½ΠΈ Π½Π°ΠΏΠΈΡΡΡ, Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΎΠ²Π°ΡΡ Π²Π°ΡΠΈΠΌ ΡΡΠ°Π½Π΄Π°ΡΡΠ°ΠΌ? ΠΡΠΎΡ ΠΎΠ΄ΡΡ Π»ΠΈ Π²Π°ΡΠΈ Π΄Π½ΠΈ Π² ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°Ρ ΡΡΠΆΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΡΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, ΠΊΠ°ΡΠ°ΡΡΡΡ ΡΠΎΠ±Π»ΡΠ΄Π΅Π½ΠΈΡ ΡΡΠ°Π½Π΄Π°ΡΡΠΎΠ², Π° Π½Π΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ?
ΠΠ²ΡΠΎΡ ΡΡΠΎΠ³ΠΎ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π° Π³ΠΎΠ²ΠΎΡΠΈΡ, ΡΡΠΎ ΠΎΠ½ ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»ΡΡ ΡΠΎ Π²ΡΠ΅ΠΌ ΡΠ΅ΠΌ, ΡΠ΅ΠΌΡ ΠΏΠΎΡΠ²ΡΡΠ΅Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π·Π°Π΄Π°Π½Π½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ. Π’ΠΎ, Ρ ΡΠ΅ΠΌ ΠΎΠ½ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ, ΡΡΠΎΠΌΠ»ΡΠ΅Ρ ΠΈ ΠΈΠ·ΠΌΠ°ΡΡΠ²Π°Π΅Ρ. ΠΠ΄Π΅ΡΡ ΠΎΠ½ Ρ ΠΎΡΠ΅Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ± ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Ρ , ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ΅ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΡΠΎΡΡΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅ΡΠΈΡΡ Π²ΡΡΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π ΠΈΠΌΠ΅Π½Π½ΠΎ, Π·Π΄Π΅ΡΡ ΠΏΠΎΠΉΠ΄ΡΡ ΡΠ΅ΡΡ ΠΎ ΡΠ°ΠΊΠΈΡ ΡΡΠ΅Π΄ΡΡΠ²Π°Ρ ΠΊΠ°ΠΊ Prettier, ESLint, Husky, Lint-Staged, EditorConfig, ΠΎΠ± Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π»ΠΈΠ½ΡΠΈΠ½Π³Π° ΠΊΠΎΠ΄Π°. ΠΡΠΎΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π» ΠΎΡΠΈΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, Π½Π° React-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ, Π½ΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠ΅ Π·Π΄Π΅ΡΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΡΡ Π² Π»ΡΠ±ΠΎΠΌ Π²Π΅Π±-ΠΏΡΠΎΠ΅ΠΊΡΠ΅. ΠΠΎΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, Π³Π΄Π΅, ΠΊΡΠΎΠΌΠ΅ ΠΏΡΠΎΡΠ΅Π³ΠΎ, ΡΠΎΠ±ΡΠ°Π½ΠΎ ΡΠΎ, ΠΎ ΡΡΠΌ ΡΡΡ ΠΏΠΎΠΉΠ΄ΡΡ ΡΠ΅ΡΡ.
Prettier
Prettier β ΡΡΠΎ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ Π΄Π»Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π°ΡΠ΅Π»Π΅Π½ΠΎ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΆΡΡΡΠΊΠΎ Π·Π°Π΄Π°Π½Π½ΡΡ ΠΏΡΠ°Π²ΠΈΠ» ΠΏΠΎ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ. ΠΠ½ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΠΎΡ ΠΊΠ°ΠΊ ΡΡΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ.
Prettier ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄, ΡΠ»Π΅Π΄ΡΡ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ
βΠ‘ΠΈΠ»ΡΠ½ΡΠ΅ ΡΡΠΎΡΠΎΠ½Ρ Prettier
ΠΠΎΡ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ Prettier ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π³ΠΎΠ²ΠΎΡΠΈΡΡ ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΡΡΠΈ ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°:
βΠΠ°ΡΡΡΠΎΠΉΠΊΠ° Prettier
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΠ°ΠΊΠ΅Ρ prettier Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π² package.json Π±ΡΠ΄Π΅Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Π·Π°ΠΏΠΈΡΡ ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ°ΠΊ:
Π ΡΡΠΎΡ ΡΠ°ΠΉΠ» Π²Π½Π΅ΡΡΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ (ΠΈΠΌΠ΅Π½Π½ΠΎ Π² ΡΠ°ΠΊΠΎΠΌ Π²ΠΎΡ Π½Π΅ΠΏΡΠΈΠ³Π»ΡΠ΄Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅):
ΠΠ°ΠΊ ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ? Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΡΡΠΈ ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΠΊ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΠΏΠ»ΠΎΡ ΠΎ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ:
Π Π°Π·Π±Π΅ΡΡΠΌ ΡΡΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π°:
ΠΠΎΡ ΡΡΠΎ ΠΏΡΠΎΠΈΠ·ΠΎΠΉΠ΄ΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ Π² Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ false :
Π’Π΅ΠΏΠ΅ΡΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠ°Π²ΠΈΠ»Π° Π½Π°ΡΡΡΠΎΠ΅Π½Ρ, ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΊΡΠΈΠΏΡΠ΅:
ΠΠ°ΠΏΡΡΡΠΈΠΌ ΡΠΊΡΠΈΠΏΡ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ:
ΠΠΎΡ ΡΡΠΎ ΡΡΠ°Π»ΠΎ ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Ρ ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΠΌ Π²ΡΡΠ΅ ΠΏΠ»ΠΎΡ ΠΎ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Prettier
ΠΠ° ΡΡΠΎΠΌ Π±ΡΠ΄Π΅ΠΌ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Ρ Prettier ΠΌΡ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΠΈΡΡ. ΠΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ Π»ΠΈΠ½ΡΠ΅ΡΠ°Ρ .
ESLint
ΠΠΈΠ½ΡΠΈΠ½Π³ β ΡΡΠΎ Π²ΠΈΠ΄ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΈΠ·Π° ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΡΡ ΠΏΠ°ΡΡΠ΅ΡΠ½ΠΎΠ² ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ»ΠΈ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π°ΠΌ ΠΏΠΎ ΡΡΠΈΠ»Ρ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ Π»ΠΈΠ½ΡΠ΅ΡΡ, ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π½ΡΠ΅ Π΄Π»Ρ Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π° ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΈΠ½ΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ Π»ΠΈΠ½ΡΠΈΠ½Π³ Π² ΠΏΡΠΎΡΠ΅ΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ ΠΊΠΎΠ΄Π°. ΠΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π»ΠΈΠ½ΡΠΈΠ½Π³Π° Π²Π·ΡΡΠΎ ΡΠΎ ΡΡΡΠ°Π½ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎΠ± ΠΎΠΏΠ΅Π½ΡΠΎΡΡΠ½ΠΎΠΌ Π»ΠΈΠ½ΡΠ΅ΡΠ΅ Π΄Π»Ρ JavaScript ESLint, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΡ ΠΈ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ.
βΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ Π»ΠΈΠ½ΡΠ΅Ρ Π΄Π»Ρ JavaScript?
Π’Π°ΠΊ ΠΊΠ°ΠΊ JavaScript β ΡΡΠΎ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠΎ ΡΠ»Π°Π±ΠΎΠΉ ΡΠΈΠΏΠΈΠ·Π°ΡΠΈΠ΅ΠΉ, ΠΊΠΎΠ΄, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΉ Π½Π° Π½ΡΠΌ, ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ Π΄ΠΎΠΏΡΡΠΊΠ°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ. JavaScript β ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΡΠ΅ΠΌΡΠΉ ΡΠ·ΡΠΊ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ Π² ΠΊΠΎΠ΄Π΅ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΡΠ²Π»ΡΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ° ΡΡΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.
ΠΠΈΠ½ΡΠ΅ΡΡ, Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ ESLint, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ°ΠΌ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π² ΠΊΠΎΠ΄Π΅, Π½Π΅ Π·Π°ΠΏΡΡΠΊΠ°Ρ Π΅Π³ΠΎ.
βΠΠΎΡΠ΅ΠΌΡ ESLint β ΡΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΡΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ?
Π Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΡΡΠΎΠ³ΠΎ ΡΠ°Π·Π΄Π΅Π»Π° Π²ΡΠ½Π΅ΡΠ΅Π½ Ρ ΠΎΡΠΎΡΠΈΠΉ Π²ΠΎΠΏΡΠΎΡ. ΠΠ΅Π»ΠΎ ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ ESLint ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΏΠ»Π°Π³ΠΈΠ½Ρ. Π’Π°ΠΊ, ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΊΠΎΠ΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΌΠΎΠ½ΠΎΠ»ΠΈΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ. ΠΡΡ, ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΏΠΎ ΠΌΠ΅ΡΠ΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ. ΠΠ°ΠΆΠ΄ΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΠΌΠΎΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ Π»ΠΈΠ½ΡΠΈΠ½Π³Π° Π°Π²ΡΠΎΠ½ΠΎΠΌΠ½ΠΎ, ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ, Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π΄ΡΡΠ³ΠΈΡ , Π²ΠΊΠ»ΡΡΠ΅Π½ΠΎ ΠΈΠ»ΠΈ Π²ΡΠΊΠ»ΡΡΠ΅Π½ΠΎ. ΠΠ°ΠΆΠ΄ΠΎΠΌΡ ΠΏΡΠ°Π²ΠΈΠ»Ρ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π½Π°ΡΠΈΡΡ ΡΡΠΎΠ²Π΅Π½Ρ ΠΎΠΏΠΎΠ²Π΅ΡΠ΅Π½ΠΈΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° β ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ (warning) ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠ° (error).
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ESLint Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ, ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΠΉ ΠΎΡΡΠ°Π·ΠΈΡΡ Π²Π°ΡΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄, ΠΈ Π·Π°ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠΎ, ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠ²ΠΎΠ΄Π° ΠΏΡΠ°Π²ΠΈΠ» Π²Ρ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΠ΅ΡΡ.
Π‘ΡΠ΅Π΄ΠΈ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΡ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ² ΠΏΠΎ ΡΡΠΈΠ»Ρ JavaScript ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅, Π²Π΅ΡΡΠΌΠ° ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅:
ΠΡΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ Π°ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ β Π²Π·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° Π΅Π³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Π½Π° GitHub. ΠΠ΄Π΅ΡΡ Ρ Π±ΡΠ΄Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°Π±ΠΎΡ ΠΏΡΠ°Π²ΠΈΠ», ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° Π½ΡΠΌ.
ΠΠΎΡΡΠΎΠΌΡ ΠΎΠ±ΡΡΠ΄ΠΈΠΌ ΡΠΎΠ»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π·Π΄Π΅ΡΡ ΠΏΠ°ΠΊΠ΅ΡΠΎΠ²:
ΠΡΠΎΡ ΡΠ°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΡΠΊΡΡΡΡ:
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π±Π»ΠΎΠΊΠΈ ΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ°ΠΌΠΈ Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ:
ΠΠ΄Π΅ΡΡ Π·Π°Π΄Π°Π½Ρ ΡΡΠΈ ΠΏΠ°ΠΏΠΊΠΈ:
ΠΠ°ΠΏΡΡΠΊ ΡΠΊΡΠΈΠΏΡΠ° lint
ΠΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π²ΡΠΎΡΠΎΠΉ ΡΠΊΡΠΈΠΏΡ ( yarn lint:write ), ΡΠΎ ESLint Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΡΠ°ΠΊΡΡ ΠΆΠ΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π±ΡΠ»Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½Π° ΡΠ°Π½ΡΡΠ΅. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ΅ ΡΠ°Π·Π»ΠΈΡΠΈΠ΅ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΏΠΎΠΏΡΡΠ°Π΅ΡΡΡ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½Π½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ, ΠΏΠΎΡΡΠ°ΡΠ°Π΅ΡΡΡ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊΠΎΠ΄ Π² ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΡΡΠΎΠΉΠ½ΡΠΉ Π²ΠΈΠ΄.
Π Π°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ESLint Π΄Π»Ρ VS Code
Π£ Π½Π°Ρ ΡΠΆΠ΅ Π΅ΡΡΡ Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Prettier ΠΈ ESLint, Π½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ ΡΡΠΈΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Π½Π°ΠΌ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΡΠΊΡΠΈΠΏΡΡ. ΠΡΠΎ Π½Π΅ ΠΎΡΠ΅Π½Ρ-ΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ ΡΡΠΎ ΠΈΡΠΏΡΠ°Π²ΠΈΡΡ. Π ΠΈΠΌΠ΅Π½Π½ΠΎ, ΠΌΡ Ρ ΠΎΡΠΈΠΌ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Π»ΠΈΠ½ΡΠΈΠ½Π³ ΠΊΠΎΠ΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΈΡΡ Π±Ρ ΠΏΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»Π° Π² ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π»ΠΈΠ½ΡΠΈΠ½Π³ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ².
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅.
ΠΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ²ΠΎΠΈ ΠΎΡΡΡΠ΅Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π±Ρ ΠΊ Π²Π°ΠΌ ΠΏΠΎΠΏΠ°Π» ΠΊΠΎΠ΄ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π² 20000 ΡΡΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π½Π°Π΄ΠΎ Π±ΡΠ»ΠΎ Π±Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ ΠΈ ΡΠ»ΡΡΡΠΈΡΡ. Π ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅ ΡΠ΅Π±Π΅, ΡΡΠΎ Π²Π°ΠΌ ΠΏΡΠΈΡΠ»ΠΎΡΡ Π±Ρ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ Π²ΡΡΡΠ½ΡΡ. Π’Π°ΠΊΠ°Ρ ΡΠ°Π±ΠΎΡΠ° Π·Π°Π½ΡΠ»Π° Π±Ρ, Π½Π°Π²Π΅ΡΠ½ΠΎΠ΅, ΠΌΠ΅ΡΡΡ. Π Ρ ΠΏΠΎΠΌΠΎΡΡ Π²ΡΡΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½ΡΡ ΡΡΠ΅Π΄ΡΡΠ² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Π²ΡΡ ΡΡΠΎ Π΄Π΅Π»Π°Π΅ΡΡΡ ΡΠ΅ΠΊΡΠ½Π΄ Π·Π° ΡΡΠΈΠ΄ΡΠ°ΡΡ.
Π’Π΅ΠΏΠ΅ΡΡ, ΠΏΠΎΡΠ»Π΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π²ΡΠ΅Π³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΠ΅ ΡΠ°ΠΉΠ» Ρ ΠΊΠΎΠ΄ΠΎΠΌ, ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΡΠ°ΠΌ ΠΏΠΎΠ·Π°Π±ΠΎΡΠΈΡΡΡ ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ΅ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ΅ΠΊΡΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΡ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠΌ ΠΎ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠ΅ VS Code. ΠΠΏΠΎΠ»Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΡΠΎ ΠΊΡΠΎ-ΡΠΎ Π² Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠΈΡΠ°Π΅Ρ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡΠ΄Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ. ΠΠΈΡΠ΅Π³ΠΎ ΠΏΠ»ΠΎΡ ΠΎΠ³ΠΎ Π² ΡΡΠΎΠΌ Π½Π΅Ρ, Π½ΠΎ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ΠΌ ΡΠ΄ΠΎΠ±Π½ΠΎ Π±ΡΠ»ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ, Π½Π°ΠΌ ΠΏΡΠΈΠ΄ΡΡΡΡ ΠΏΠΎΠ·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ Π΅ΡΡ ΠΊΠΎΠ΅-ΡΡΠΎ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ.
Husky
ΠΠ°ΠΊΠ΅Ρ Husky ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΡΠΊΠΈ Git. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ Ρ Π²Π°Ρ ΠΏΠΎΡΠ²Π»ΡΠ΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π΅ΠΊΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π΄ ΠΎΡΠΏΡΠ°Π²ΠΊΠΎΠΉ ΠΊΠΎΠ΄Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ.
ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ Husky, ΡΠ½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΡΡΠΎΡ ΠΏΠ°ΠΊΠ΅Ρ:
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π² package.json ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ commit ΠΈΠ»ΠΈ push Π±ΡΠ΄Π΅Ρ Π²ΡΠ·Π²Π°Π½ Π½Π΅ΠΊΠΈΠΉ ΡΠΊΡΠΈΠΏΡ, ΠΊΠΎΡΠΎΡΡΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ Π΅Π³ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΎ Husky ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ Π·Π΄Π΅ΡΡ.
Lint-staged
ΠΠ°ΠΊΠ΅Ρ Lint-staged ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π»ΠΈΠ½ΡΠ΅ΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡΡ ΠΎΡΠΏΡΠ°Π²ΠΊΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΊΠΎΠ΄Π° Ρ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌΠΈ.
ΠΠΈΠ½ΡΠΈΠ½Π³ ΠΈΠΌΠ΅Π΅Ρ ΡΠΌΡΡΠ» ΠΏΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Π΄ΠΎ ΠΊΠΎΠΌΠΌΠΈΡΠ° ΠΊΠΎΠ΄Π°. ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ ΠΎΡΠΈΠ±ΠΊΠΈ Π½Π΅ ΠΏΡΠΎΠ½ΠΈΠΊΠ°Π»ΠΈ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π΅Π΄ΠΈΠ½ΡΡ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠΎΠ΄Π°, ΠΏΠΎΠΏΠ°Π΄Π°ΡΡΠ΅Π³ΠΎ ΡΡΠ΄Π°. ΠΠ΄Π½Π°ΠΊΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π»ΠΈΠ½ΡΠΈΠ½Π³Π° Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π²ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π΄Π»ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΌΠΎΠ³ΡΡ ΠΎΠΊΠ°Π·Π°ΡΡΡΡ Π±Π΅ΡΡΠΌΡΡΠ»Π΅Π½Π½ΡΠΌΠΈ. Π ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΡΡΡΡΠ΅, Π»ΠΈΠ½ΡΠΈΠ½Π³Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΠΎΠ΄Π²Π΅ΡΠ³Π½ΡΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ»Π°Π½ΠΈΡΡΠ΅ΡΡΡ Π·Π°ΠΊΠΎΠΌΠΌΠΈΡΠΈΡΡ.
Lint-staged ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π°Π±ΠΎΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΡ Π·Π°Π΄Π°Ρ Π½Π°Π΄ ΠΈΠ½Π΄Π΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ, ΠΎΡΡΠΈΠ»ΡΡΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΠΏΠΎ ΡΠ°Π±Π»ΠΎΠ½Ρ ΠΏΠΎΠΈΡΠΊΠ°. ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΠΎΠ± ΡΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΈΡΠ°ΡΡ Π·Π΄Π΅ΡΡ.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΠΌ ΠΏΠ°ΠΊΠ΅Ρ Lint-staged:
Π‘ΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Husky ΠΈ Lint-staged
ΠΡΠΈΠ²Π΅Π΄ΡΠΌ ΡΠ½ΠΎΠ²Π°, Π΄Π»Ρ ΡΠ΄ΠΎΠ±ΡΡΠ²Π°, ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π½Π°ΡΠ΅Π³ΠΎ package.json :
Π’Π΅ΠΏΠ΅ΡΡ, Π·Π½Π°Ρ ΠΎ Husky ΠΈ Lint-staged, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΎΡΠ΅Π½ΠΈΡΡ ΠΈΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π½Π° ΡΠ°Π±ΠΎΡΡ Ρ Git. Π ΠΈΠΌΠ΅Π½Π½ΠΎ, ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Π±ΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ Π·Π½Π°Π΅ΡΠ΅ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°ΡΡ Prettier, ESLint, Husky ΠΈ Lint-staged Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ.
ΠΠ° ΡΠ°ΠΉΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΠ΅Π΄Π°ΠΊΡΠΎΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΡΡΠΎΡ ΡΠ°ΠΉΠ». Π Π½Π΅Π³ΠΎ, Π² ΡΠ°ΡΡΠ½ΠΎΡΡΠΈ, Π²Ρ ΠΎΠ΄ΡΡ WebStorm, AppCode, Atom, Eclipse, Emacs, BBEdit ΠΈ Π΄ΡΡΠ³ΠΈΠ΅.
ΠΠΎΡΡΠ½ΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅:
ΠΡΠΎΠ³ΠΈ
ΠΠΎΠ»Π°Π³Π°Π΅ΠΌ, ΠΏΡΠΎΡΠΈΡΠ°Π² ΡΡΠΎΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π», Π²Ρ Π²ΠΏΠΎΠ»Π½Π΅ Π³ΠΎΡΠΎΠ²Ρ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ΄ΠΎΠ±Π½ΡΡ ΡΡΠ΅Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΡΠ°Π±Π°. ΠΠ½ΡΡΡΡΠΌΠ΅Π½ΡΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠ΅ Π·Π΄Π΅ΡΡ, ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π² ΠΊΠΎΠ΄Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΠΈ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΡΠΈΠ½Π½ΡΡ Π·Π°Π΄Π°Ρ.
Π£Π²Π°ΠΆΠ°Π΅ΠΌΡΠ΅ ΡΠΈΡΠ°ΡΠ΅Π»ΠΈ! ΠΠ°ΠΊΠΈΠΌΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΠΌΠΈ Π²Ρ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΠ΅ΡΡ Π΄Π»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π°? ΠΠ°ΠΊ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΡΠ΅ΡΠ΅ ΡΡΠΈ ΠΏΡΠΎΡΠ΅ΡΡΡ?
ΠΠΎΡΠ΅ΠΌΡ ΠΡΠ΅ΡΡΡΠ΅ Π½Π΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄ Π² VSCODE?
Π ΠΌΠΎΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Nuxt, Π³Π΄Π΅ ESlint ΠΈ Prettier ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½Ρ, Ρ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠΈΠ»ΡΡ Π½Π° ΡΠ΅Π΄Π°ΠΊΡΠΎΡ ΠΊΠΎΠ΄Π° Visual Studio.
ΠΠΎΠ³Π΄Π° Ρ ΠΎΡΠΊΡΡΠ²Π°Ρ ΡΠ°ΠΉΠ» .vue, Π½Π°ΠΆΠΈΠΌΠ°Ρ CMD + Shift + P ΠΈ Π²ΡΠ±ΠΈΡΠ°Ρ » Π€ΠΎΡΠΌΠ°Ρ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°», ΠΌΠΎΠΉ ΡΠ°ΠΉΠ» Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π΅ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅ΡΡΡ.
ΠΠΎΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ .prettierrc:
Π£ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΠΎΠΊ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΡΡΠΎ Ρ Π½Π΅ ΠΌΠΎΠ³Ρ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ Π²ΡΡΡΠ½ΡΡ. Π§ΡΠΎ Ρ Π΄Π΅Π»Π°Ρ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ?
32 ΠΎΡΠ²Π΅ΡΠ°
ΠΠ°ΠΊ Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°Π»ΡΡ ΠΏΠΎΡΠ»Π΅ ΠΎΠ³ΡΠΎΠΌΠ½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΎΡΠ°ΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ·-Π·Π° ΡΠΎΠ³ΠΎ, ΡΡΠΎ Prettier ΠΏΠ΅ΡΠ΅ΡΡΠ°Π» ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² VSCode.
ΠΡΠΎ Π²ΠΎΠ»ΡΠ΅Π±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠ΅ΡΠΈΠ»ΠΎ ΠΌΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π²Π°ΡΠ΅Π³ΠΎ ΡΠ»ΡΡΠ°Ρ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ ΠΏΠΎΠΌΠΎΡΡ.
ΠΡΠ»ΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠΏΠΎΠΌΡΠ½ΡΠ» @Simin Maleki, Π½Π΅ ΡΠ΅ΡΠΈΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π΄Π»Ρ Π²Π°Ρ, Π΅ΡΡΡ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡ, ΡΡΠΎ Π²Π°Ρ ΡΠΎΡΠΌΠ°ΡΡΠ΅Ρ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½:
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Π°Ρ Editor: Default Formatter ΠΏΠΎΠ»Π΅ Π½Π΅ null ΡΠΊΠΎΡΠ΅Π΅ esbenp.prettier-vscode ΠΈ ΡΡΠΎ ΠΎΡΠΌΠ΅ΡΠ΅Π½Ρ Π²ΡΠ΅ ΡΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΠ·ΡΠΊΠΈ. ΠΡΠΎ ΡΡΡΡΠ°Π½ΠΈΠ»ΠΎ ΠΌΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Prettier ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ.
ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΡΡ ΠΊ ΡΠ°Π±ΠΎΡΠ΅.
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ «ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ» Π² VSCode: ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° >> ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ >> Π’Π΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ >> Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
ΠΠ½ΠΎΠ³Π΄Π° prettier ΠΏΠ΅ΡΠ΅ΡΡΠ°Π΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ, ΠΊΠΎΠ³Π΄Π° Π² ΠΊΠΎΠ΄Π΅ Π΅ΡΡΡ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΎΡΠΈΠ±ΠΊΠΈ, Π½Π°ΠΆΠ°Π² ΠΊΠ½ΠΎΠΏΠΊΡ x Π² ΠΏΡΠ°Π²ΠΎΠΌ Π½ΠΈΠΆΠ½Π΅ΠΌ ΡΠ³Π»Ρ ΡΡΠ΄ΠΎΠΌ Ρ Prettier.
ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΈ Π²ΠΊΠ»ΡΡΠΈΡΡ prettier ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ°Π΅Ρ ΠΌΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ
Π― Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Vue, Π½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ»Π° ΡΠ° ΠΆΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°.
Π£ ΠΌΠ΅Π½Ρ ΡΠΆΠ΅ Π±ΡΠ»ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ
Π Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠ΅ΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π·Π°ΠΊΠ»ΡΡΠ°Π»ΠΎΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Ρ Π²ΡΠ΅ Π½Π°ΡΡΡΠΎΠΈΠ» ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ:
Π― Π½Π΅ Π·Π½Π°Ρ ΠΏΠΎΡΠ΅ΠΌΡ Editor: Format on Save ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² true Π±ΡΠ»ΠΎ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ. ΠΠ½Π΅ Π½ΡΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π²ΡΠ±ΡΠ°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π²ΡΡΠ΅ ΡΠ°Π³ΠΈ, ΡΡΠΎΠ±Ρ ΠΎΠ½ ΡΠ°Π±ΠΎΡΠ°Π».
Π― ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΡΡ Ρ ΡΡΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΈ ΡΡΠΈ ΡΡΠΈ ΡΠ°Π³Π° ΡΠ΅ΡΠΈΠ»ΠΈ ΠΌΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΠΎΠ²Π°ΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΎΡ ΡΠ°Π·Π΄Π΅Π» Π² ΡΠ²ΠΎΠΉ ΡΠ°ΠΉΠ» ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ?
prettier.disableLanguages ββ(ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ: [«vue»])
Π‘ΠΏΠΈΡΠΎΠΊ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠΎΠ² ΡΠ·ΡΠΊΠΎΠ² Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ. Π’ΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠ°. ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅. ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ·ΡΠΊΠ°, Π²ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π² ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΉ ΠΏΠ°ΠΏΠΊΠ΅, ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π²ΠΌΠ΅ΡΡΠΎ Π·Π°ΠΏΡΡΠΊΠ° Π»ΡΠ±ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΡΠ΅Π΄ΡΡΠ²Π° ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
ΠΠ°ΡΠ΅ΠΌ Ρ ΠΏΠΎΠ½ΡΠ», ΡΡΠΎ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΠ» Format On Save Mode Π½Π° modification Π° Π½Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΠΈ Π·Π°Π±ΡΠ». ΠΡΠΎ ΠΏΡΠΈΠ²Π΅Π»ΠΎ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π² ΡΠ°ΠΉΠ»Π°Ρ HTML Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΎΡΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π»ΠΎΡΡ, ΠΈ, ΡΡΠΎ ΡΠ΄ΠΈΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ, Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠ΅ΡΠ½Π΅ΠΌΡΡ ΠΊ file ΡΠ΅ΡΠΈΠ» Π²ΠΎΠΏΡΠΎΡ.
Ρ Π²Π°Ρ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ, Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° Π²ΡΠ΅ ΡΡΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, ΠΊΠ°ΠΊ ΡΠΊΠ°Π·ΡΠ²Π°Π»ΠΎΡΡ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΠΎΡΠ²Π΅ΡΠ΅, Π±ΡΠ»ΠΎ Π±Ρ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ ΠΏΡΠΎΠ²Π΅ΡΠΈΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΠ°ΡΠΈΠ²ΠΎΠ΅ ΡΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Π² Π½ΠΈΠΆΠ½Π΅ΠΉ ΡΡΡΠΎΠΊΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π² VSCode.
ΠΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ Π½Π° ΡΡΠΎΡ ΡΡΠ°ΡΡΡ ΠΏΠ°Π½Π΅Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠΎΠ±ΡΠΈΡΡ ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ΅ Π² ΡΠ°ΠΉΠ»Π΅ HTML. ΠΠ»Ρ ΠΌΠ΅Π½Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡΡΠ°Π»Π°ΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎ Ρ ΠΌΠ΅Π½Ρ Π±ΡΠ» div Π²Π½ΡΡΡΠΈ ΡΠ΅Π³Π° ap, ΠΏΡΠΎΡΠΈΠ² ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ ΠΏΠΎΠ»Π°Π³Π°Ρ, Π²ΡΡΡΡΠΏΠ°ΡΡ ΡΠΎΠ³Π»Π°ΡΠ΅Π½ΠΈΡ prettier / VSCode. ΠΠΎΠ³Π΄Π° Ρ ΡΠ΄Π°Π»ΠΈΠ» Π΅Π³ΠΎ (ΠΈ Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ Π²ΡΡΠ΅ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Π½ΡΠΌΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²ΡΠΈΠΊΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ ), Ρ ΡΡΠ°Π» Π»ΡΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
.prettierrc Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ Ρ ΠΎΡΠΈΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ VSCode.
ΠΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ «ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ» Π² VSCode: ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° >> ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ >> Π’Π΅ΠΊΡΡΠΎΠ²ΡΠΉ ΡΠ΅Π΄Π°ΠΊΡΠΎΡ >> Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Ρ ΠΌΠ΅Π½Ρ ΡΡΠ°Π±ΠΎΡΠ°Π»ΠΎ!
ΠΠ»Ρ ΠΌΠ΅Π½Ρ ΡΡΠΎ Π±ΡΠ»ΠΎ ΡΠ²ΡΠ·Π°Π½ΠΎ Ρ ESlint, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Ρ Prettier. Eslint Π½Π΅ ΡΠ°Π±ΠΎΡΠ°Π» (ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΈ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ), ΡΡΠΎ ΡΠ»ΠΎΠΌΠ°Π»ΠΎ Prettier.
ΠΡΠ»ΠΈ Prettier Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅Ρ Π²ΡΠ΅ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΊΡΠΎΠΌΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ² HTML, ΠΏΡΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠΈ:
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Cmd + P ΠΈΠ»ΠΈ ΠΆΠ΅ Ctrl + P ΡΡΠΎΠ±Ρ ΠΎΡΠΊΡΡΡΡ ΠΏΠ°Π»ΠΈΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π²Π²Π΅Π΄ΠΈΡΠ΅ Π² Π½Π΅Π΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΠ΅ΠΊΡΡ:
ΠΠ°ΠΆΠΌΠΈΡΠ΅ Π½Π° Preferences: Open Settings (JSON) ΠΈΠ· ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡΠ΅Π³ΠΎΡΡ ΡΠΏΠΈΡΠΊΠ° ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΠ½ΡΡΡΠΈ ΡΠ°ΠΉΠ»Π° ΠΏΡΠΎΠ²Π΅ΡΡΡΠ΅, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π»ΠΈ ΠΊΠ»ΡΡ. ΠΡΠ»ΠΈ ΠΊΠ»ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΈ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π΄ΡΡΠ³ΠΎΠ³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π² Visual Studio Code, Π²Π°ΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ±ΡΠΎΡΠΈΡΡ Π΅Π³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Prettier.
Prettier Π² ΠΊΡΡΠΏΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ : ΡΡΠ°ΡΠΈΠΌ 20 ΠΌΠΈΠ½ΡΡ Π½Π° Π½Π°ΡΡΡΠΎΠΉΠΊΡ, Π·Π°Π±ΡΠ²Π°Π΅ΠΌ ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ Π½Π°Π²ΡΠ΅Π³Π΄Π°
Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠ°ΡΡΠΎ Π½Π΅ ΠΌΠΎΠ³ΡΡ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠΈΡΡΡΡ ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΠΊΠΎΠ΄Π°, ΠΈ ΡΠΈΠΏΠΈΡΠ½ΡΠΉ ΡΠ°Π±ΠΎΡΠΈΠΉ Π΄Π΅Π½Ρ Π΄Π»Ρ ΠΌΠ½ΠΎΠ³ΠΈΡ Π½Π°ΡΠΈΠ½Π°Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ: ΠΊΠΎΡΠ΅, ΠΊΠΎΠ΄ΠΈΠ½Π³, Π²ΡΡ ΠΌΠΈΡΠ½ΠΎ ΠΈ Ρ ΠΎΡΠΎΡΠΎ, β Π° ΠΏΠΎΡΠΎΠΌ, Π±Π°Ρ, ΠΈ Π½Π°ΡΡΡΠΏΠ°Π΅Ρ ΠΊΠΎΠ΄-ΡΠ΅Π²ΡΡ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²ΡΡΡΠ½ΡΠ΅ΡΡΡ, ΡΡΠΎ ΡΡ Π³Π΄Π΅-ΡΠΎ ΠΏΠΎΡΡΠ°Π²ΠΈΠ» ΡΠΊΠΎΠ±ΠΎΡΠΊΠΈ Π½Π΅ ΡΠ°ΠΊ ΠΈΠ»ΠΈ Π½Π΅ ΠΏΠ΅ΡΠ΅Π½Π΅Ρ ΡΡΠΎ-ΡΠΎ Π½Π° Π½ΠΎΠ²ΡΡ ΡΡΡΠΎΡΠΊΡ.
ΠΠΎΠ΄ Π½Π°Π·Π°Π΄ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄ Π² Skyeng ΡΡΠ°Π»ΠΊΠΈΠ²Π°Π»Π°ΡΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ Ρ ΠΎΠ»ΠΈΠ²Π°ΡΠ°ΠΌΠΈ ΠΏΠΎΡΡΠΈ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ΅Π²ΡΡ. ΠΠΎ Π·Π°ΡΠ΅ΠΌ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊ, Ρ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅ Π²ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π»ΠΎ, ΡΠΊΠ°Π·Π°Π»: Β«Π’Π΅ΠΏΠ΅ΡΡ ΠΆΠΈΠ²Π΅ΠΌ Π½Π° Prettier’e, ΡΠΎΠ³Π»Π°ΡΠ½Ρ?Β» ΠΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΌΠ΅ΡΡΡΡ ΡΠ΅Π±ΡΡΠ° Π½ΠΈ ΡΠ°Π·Ρ Π½Π΅ ΠΏΠΎΠ΄Π½ΠΈΠΌΠ°Π»ΠΈ Π²ΠΎΠΏΡΠΎΡ ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ, Π° ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠ° ΡΡΡΠΊΠ° ΡΡΠΎΠΈΡ Π½Π° Π²ΡΠ΅ΠΌ ΠΌΠΎΠ½ΠΎΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΡΡΠΎΠ½ΡΠ΅Π½Π΄Π° β ΠΈ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΡΠ΄Π° Π·Π°Π΅Π·ΠΆΠ°Π΅Ρ.
Prettier β ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Π΄Π»Ρ Π°Π²ΡΠΎΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΊΡΡΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², Π²ΠΊΠ»ΡΡΠ°Ρ Π½Π°ΡΠΈ Π»ΡΠ±ΠΈΠΌΡΠ΅ Angular ΠΈ Typescript. ΠΠ½ Π½Π΅ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΡΠ΅Ρ ΠΊΠΎΠ΄, Π½Π΅ Π·Π°ΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ΅ΡΠ½Π°ΡΠ½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π½Π° ifβΡ ΠΈ Π½Π΅ ΡΠ°Π·Π±ΠΈΠ²Π°Π΅Ρ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠΎΠ½ΠΊΠ°ΡΠ΅Π½ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ (ΠΎΠ± ΡΡΠΎΠΌ ΡΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄ΡΠΌΠ°ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ), Π° ΠΏΡΠΎΡΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΎ, ΡΡΠΎ Π΅ΡΡΡ, Ρ Π½ΡΠΆΠ½ΡΠΌ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ.
ΠΠ°ΠΊ Π±ΡΠ»ΠΎ ΡΠ°Π½ΡΡΠ΅
ΠΠ° ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ Π² Skyeng Π±ΡΠ»ΠΎ ΡΠΆΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠ΅ΡΡΡ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡ ΠΏΠΎ 10-20 Π½ΠΎΠ²ΠΈΡΠΊΠΎΠ². ΠΡΠ΅ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ (ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ) Π² Π½Π΅Π±ΠΎΠ»ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ β ΠΊΠ°ΠΆΠ΄Π°Ρ, ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΡΠΈΡΠ°Π΅ΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠΉ βΠ±ΠΎΠ΅Π²ΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ΠΉβ ΡΠΎ ΡΠ²ΠΎΠΈΠΌΠΈ Π·Π°Π΄Π°ΡΠ°ΠΌΠΈ ΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ΅Π½Π½ΠΎΡΡΡΠΌΠΈ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΠΈΠΌ ΠΎΠ΄Π½Ρ ΡΠ°ΠΊΡΡ β Π±Π΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, Π²ΡΠ΅ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ ΡΠ»ΡΡΠ°ΠΉΠ½Ρ, β ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ΠΠΎΡΠΈΡ β ΠΌΠΈΠ΄Π΄Π», ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΡΡΠ» ΠΊ Π½Π°ΠΌ ΠΈΠ· Π΄ΡΡΠ³ΠΎΠΉ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. Π£ Π½ΠΈΡ Π±ΡΠ» ΡΠ²ΠΎΠΉ ΡΡΠ°ΠΉΠ»-Π³Π°ΠΉΠ΄, Π½ΠΎ ΠΎΠ½ ΡΡΠ°ΡΠ°Π΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠΈΡΡΡΡ Π½Π° Π½Π°Ρ: Π² ΡΠ΅Π»ΠΎΠΌ, ΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ, Π½ΠΎ Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ-ΡΠΎ ΠΏΠΎ ΡΠ°ΡΡΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅ ΡΠ°ΠΊ ΠΈ ΡΠ·Π½Π°ΡΡ ΠΎΠ± ΡΡΠΎΠΌ ΡΠΎΠ»ΡΠΊΠΎ Π½Π° ΠΊΠΎΠ΄-ΡΠ΅Π²ΡΡ. ΠΠ΅Π»ΠΎΡΡ, Π½ΠΎ Π½Π΅ΠΏΡΠΈΡΡΠ½ΠΎ.
ΠΠ°Π²Π΅Π» β Π±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡΡΠ½ΡΠΉ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊ. ΠΠ½Π°Π΅Ρ ΡΠ²ΠΎΡ Π΄Π΅Π»ΠΎ, Π²ΡΠ΅Π³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°Π΄Π°ΡΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈ Π² ΡΡΠΎΠΊ, Π½ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°ΠΏΡΠΎΡΡ Π·Π°Π±ΡΠ²Π°Π΅Ρ ΠΏΡΠΎ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΠΏΠΈΡΠ΅Ρ ΠΏΠΎ-ΡΠ²ΠΎΠ΅ΠΌΡ. Π ΠΈΡΠΎΠ³Π΅ Π΅Π³ΠΎ ΠΊΠΎΠ΄ Π½Π΅ Π²ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Π² Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ, Ρ ΠΎΡΡ ΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈ ΡΠΎ Π²ΠΊΡΡΠΎΠΌ.
ΠΡΡΡΡ β ΠΏΠ΅ΡΡΠ΅ΠΊΡΠΈΠΎΠ½ΠΈΡΡ Ρ ΡΠΈΠ»ΠΎΡΠΎΡΠΈΠ΅ΠΉ Β«ΡΠΈΡΡΡΠΉ ΠΊΠΎΠ΄ β ΠΏΠΎΠ½ΡΡΠ½ΡΠΉ ΠΊΠΎΠ΄Β»: Π²Π΅ΡΠ½ΠΎ ΠΏΠ°ΡΠΈΡΡΡ ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρ ΠΊΠΎΠ΄-ΡΡΠ°ΠΉΠ»Π°. ΠΠ΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΡ ΠΊΠΎΠ΄ ΠΊΠΎΠ»Π»Π΅Π³ Ρ ΠΊΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠΎΠ² Β«Π·Π΄Π΅ΡΡ ΠΏΠ΅ΡΠ΅Π½Π΅ΡΠΈΡΠ΅ ΡΠΈΠ³ΡΡΠ½ΡΡ ΡΠΊΠΎΠ±ΠΎΡΠΊΡ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΡΠΊΡΒ» β ΠΈ ΠΠΎΡΠΈΡ ΠΏΠΎΡΡΠ°ΡΠΈΡ Π²ΡΠ΅ΠΌΡ Π½Π° ΠΏΡΠ°Π²ΠΊΠΈ, Π° ΠΠ°Π²Π΅Π» β Π½Π° ΡΠΏΠΎΡΡ ΡΡΠΎΠ²Π½Ρ Β«ΡΠ΅Π±Π΅ Π½Π΅ Π½ΡΠ°Π²ΠΈΡΡΡ, ΡΡ ΠΈ ΠΌΠ΅Π½ΡΠΉΒ».
ΠΠ°ΠΊ ΡΡΠ°Π»ΠΎ
ΠΠ°Π΄Π°ΡΠ° Prettier β Π·Π°ΡΡΠ°Π²ΠΈΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π½Π΅ Π΄ΡΠΌΠ°ΡΡ ΠΎ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ: Π² Π½Π΅ΠΌ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π½Π°ΡΡΡΠΎΠ΅ΠΊ. ΠΡΠΎ ΠΈ ΠΏΠΎΠ΄ΠΊΡΠΏΠΈΠ»ΠΎ ΠΠ°Π²Π»Π°, ΠΊΠΎΠ³Π΄Π° ΠΡΡΡΡ ΠΊΠΈΠ½ΡΠ» Π² ΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΡΡΠ»ΠΊΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡ:
β ΠΏΠΎΡΡΠ°Π²ΠΈΠ» ΡΠ°ΠΌ Prettier,
β ΠΏΠΎΡΡΠ°Π²ΠΈΠ» ΠΏΡΠ΅-ΠΊΠΎΠΌΠΌΠΈΡ Ρ
ΡΠΊ (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅),
β ΠΎΡΡΠ°Π²ΠΈΠ» Π² ΡΠ°ΡΠ΅ ΠΏΠ°ΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠ΅Π², ΡΡΠΎ ΠΊΠΎΠ΄-ΡΡΠ°ΠΉΠ» ΡΠ°ΠΌ ΡΠ²ΠΎΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Π² ifβΠ°Ρ
ΡΡΠ°Π²ΡΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ, Π° Π½Π΅ Π² Π½Π°ΡΠ°Π»Π΅).
ΠΡΡ, ΡΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΠ΅ΡΠ΅ΡΠ»Π° Π½Π° Prettier. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π΄ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ Prettier ΠΈ ΠΏΠΎΡΠ»Π΅. ΠΠ½ ΡΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°.
ΠΠ°ΠΆΠ΅ Π΅ΡΠ»ΠΈ Π±Ρ ΡΡΠΎ Π±ΡΠ»ΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΎΠ΄Π½Ρ ΡΡΡΠΎΠΊΡ, ΠΎΠ½ΠΎ Π²ΡΡ ΡΠ°Π²Π½ΠΎ Π±Ρ ΠΏΠ΅ΡΠ΅ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π»ΠΎΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ Π½Π°Π΄ΠΎ:
ΠΡΡ ΠΊΡΡΠΎΡΠ΅ΠΊ ΠΊΠΎΠ΄Π°, ΡΠΆΠ΅ Π±Π΅Π· ΡΠΎΡΠ΅ΠΊ Ρ Π·Π°ΠΏΡΡΠΎΠΉ. ΠΠΎ:
Π’Π΅ΠΏΠ΅ΡΡ ΠΊΠΎΠ΄-ΡΠ΅Π²ΡΡ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ Π±ΡΡΡΡΠ΅Π΅, ΠΠΎΡΠΈΡ Π½Π΅ ΡΡΠ°ΡΠΈΡ ΠΊΡΡΡ ΡΠ°Π±ΠΎΡΠ΅Π³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π½Π° ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΆΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°, ΠΠ°Π²Π΅Π» ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ ΠΏΠΈΡΠ°ΡΡ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΠΈ ΠΏΠΈΡΠ°Π» (Π½ΠΎ ΡΠ΅ΠΏΠ΅ΡΡ Ρ Π½ΠΈΠΌ Π½ΠΈΠΊΡΠΎ Π½Π΅ ΡΡΠ³Π°Π΅ΡΡΡ), Π° ΠΡΡΡΡ Π½Π°ΠΊΠΎΠ½Π΅Ρ-ΡΠΎ Π΄ΠΎΠ²ΠΎΠ»Π΅Π½, Π·Π°Ρ ΠΎΠ΄Ρ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΠΈ ΡΠ»ΡΠ±Π°ΡΡΡ ΠΎΡ ΠΊΡΠ°ΡΠΎΡΡ ΠΊΠΎΠ΄Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½Ρ Ρ ΡΠ΅Π²ΡΠ°Π»Ρ 2019-Π³ΠΎ, ΡΠ΅Π±ΡΡΠ° ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΠ»ΠΈ ΠΊΡΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, ΠΏΠ΅ΡΠ΅ΡΡΠ°Π² ΡΠΏΠΎΡΠΈΡΡ ΠΈΠ·-Π·Π° ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π Π·Π°ΡΠ΅ΠΌ ΡΠ±Π΅Π΄ΠΈΠ»ΠΈ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ°ΠΊ ΠΆΠ΅.