Layout Π΄Π»Ρ Material-UI. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ layout Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈβ¦ | by Daria Sidorova | NOP::Nuances of Programming
ΠΡΠΈΠΌΠ΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΠΎΠ³ΠΎ Layout ΠΈΠ· material.ioMaterial-UI β ΠΎΠ΄Π½Π° ΠΈΠ· ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² react. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΈΠ»ΠΈ ΡΡΠ°ΡΡΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡΡ layout Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ². ΠΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠΎΠ²Π°ΡΡ Drawer, Header (AppBar), Content ΠΈ Footer ΡΠ°ΠΌΠΎΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ. ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΡΠΎ Π½Π΅ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΡΡΡ Π² Material-UI, ΠΏΠΎΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ 3β4 ΡΠ°ΡΠ°, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ (Ρ Π²ΡΡΠΎΠΊΠΎΠΉ Π²Π΅ΡΠΎΡΡΠ½ΠΎΡΡΡΡ ΠΏΡΠΈΠ΄Π΅ΡΡΡ Π² Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΌ Π²ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π΅Π»ΡΠ²Π°ΡΡ π).
ΠΡΠΈΡΠΈΠ½Ρ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ layout ΠΎΡΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ:
- ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ CSS Π½Π° ΡΡΠΎΠ²Π½Π΅ intermediate ΠΈ advanced, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π°Π²ΡΠΊΠΈ ΡΠ°Π±ΠΎΡΡ Ρ flexBox.
- ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²Π°ΡΠΈΠ°Π½ΡΠΎΠ² Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΡΠΊΡΠ°Π½Π° (ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΠΎΡΡΡ).
- ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π·Π°Π²ΠΈΡΠΈΠΌΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ Drawer Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ Header, ΡΠΎ Π²ΡΠΎΡΠΎΠΉ ΡΠΌΠ΅Π½ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΈΡΠΈΠ½Π΅, ΡΡΠΎΠ±Ρ Π·Π°ΠΏΠΎΠ»Π½ΠΈΡΡ ΡΠΊΡΠ°Π½ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅.
ΠΡΠ΅Π΄Π»Π°Π³Π°Ρ Π³ΠΎΡΠΎΠ²ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. Π― ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π» ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Material-UI ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ° react.
yarn add @material-ui/core
ΠΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π΄Π΅ΠΌΠΎ-Π²Π΅ΡΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ Π·Π΄Π΅ΡΡ.
ΠΠ° ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ.ΠΡΠ΅ ΠΏΡΠΎΡΡΠΎ. ΠΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Root
ΡΠ²Π»ΡΠ΅ΡΡΡ Provider Π΄Π»Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ layout (ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΎΠ± ΡΡΠΎΠΌ ΠΏΠΎΠ·ΠΆΠ΅). ΠΠ°ΠΆΠ΄ΡΠΉ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ (Nav, Header, Content ΠΈ Footer) ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΡΡΡ ΠΊ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΡ ΠΈ Π²Π΅Π΄Π΅Ρ ΡΠ΅Π±Ρ ΠΏΠΎ-ΡΠ°Π·Π½ΠΎΠΌΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΆΠ΄ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π² ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ.
Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ 9 ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ .
navVariant
β ΡΠΎΡ ΠΆΠ΅ Π²Π°ΡΠΈΠ°Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π΄ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Drawer. Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΊΡΠ°Π½Π°.
// example
const config = {
navVariant: {
xs: 'temporary', // recommended in mobile
sm: 'persistent',
md: 'permanent',
}
}
2. navWidth
β ΡΠΈΡΠΈΠ½Π° Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ (Π±Π΅Π»Π°Ρ ΠΎΠ±Π»Π°ΡΡΡ). ΠΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΈΡΠ»ΠΎΠΌ ΠΈΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΎΠ±ΡΠ΅ΠΊΡΠ° (Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΊΡΠ°Π½Π°).
3. navAnchor
β ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΎ left
, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π΄ΠΊΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ) ΠΈ ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²Π½Π΅ΡΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ.
4. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ collapsible
ΡΡΡΠ°Π½ΠΈΡΡ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π΅ΡΠ½ΡΡΡ. ΠΠ½ΠΎΠΏΠΊΠ° ΡΠ²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ. ΠΠ½ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ).
5. collaspedWidth
β ΡΠΈΡΠΈΠ½Π° Π΄Π»Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ Π² ΡΠ²Π΅ΡΠ½ΡΡΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ).
6. clipped
ΡΠ°Π·ΠΌΠ΅ΡΠ°Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π½Π° ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Ρ ΡΠΊΡΠ°Π½Π° (Π½Π°Π²ΠΈΠ³Π°ΡΠΈΡ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ Π·Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠΌ, Π° Π½Π΅ Π½ΠΈΠΆΠ΅). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ), ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΌ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
.
7. headerPosition
β ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠ³ΠΎ AppBar (Header β ΡΡΠΎ AppBar). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ).
8. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ squeezed
Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΠΎΡΡΠ°ΡΡΡΡ Π½Π° ΡΠΊΡΠ°Π½Π΅ ΠΏΡΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΡΠΈΡΠΈΠ½Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ. ΠΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°ΡΡΡΠ³ΠΈΠ²Π°ΡΡΡΡ ΠΈ ΡΠΆΠΈΠΌΠ°ΡΡΡΡ (ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π²Π»ΠΈΡΠ½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, Π½Π°Ρ
ΠΎΠ΄ΡΡΠΈΠ΅ΡΡ Π²Π½ΡΡΡΠΈ Π½ΠΈΡ
, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΈΡΠΈΠ½Π° ΡΠ²Π»ΡΠ΅ΡΡΡ Π΄ΠΈΠ½Π°ΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ). ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ).
9. footerShrink
. ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΡΠΉ ΡΠ°Π±Π»ΠΎΠ½ (ΠΎΠ±ΡΠ΅ΠΊΡ).
ΠΠΎΡ ΠΈ Π²ΡΠ΅. Π Π°Π·Π²Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅?
ΠΠ³ΡΠΎΠ²Π°Ρ ΠΏΠ»ΠΎΡΠ°Π΄ΠΊΠ° Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΡΠ΅ΡΠ΅ΡΠ°. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅!ΠΠ»Ρ ΡΠ΅Ρ , ΠΊΠΎΠΌΡ Π½Π΅ ΠΏΠΎΠ½ΡΠ°Π²ΠΈΠ»ΠΈΡΡ ΡΡΠΈ ΠΏΡΠ΅ΡΠ΅ΡΡ, Ρ ΡΠΎΠ·Π΄Π°Π» Layout Builder. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΠΏΡΡΠΌΠΎ ΡΠ΅ΠΉΡΠ°Ρ.
Π§ΠΈΡΠ°ΠΉΡΠ΅ ΡΠ°ΠΊΠΆΠ΅:
- React Native vs Flutter
- 9 UI-Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π²Π΅Π±-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ Π² 2019 Π³ΠΎΠ΄Ρ
- 12 UI Grid-ΡΠΈΡΡΠ΅ΠΌ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π΄Π»Ρ React Π°ΠΊΡΡΠ°Π»ΡΠ½ΡΡ Π² 2019 Π³ΠΎΠ΄Ρ
ΠΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΠ°ΡΡΠΈ siriwatknp: Introducing Layout for Material-UI
ΠΠΎΠ»Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ React JS material-ui
26. 06.2018 ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ Π·Π°ΠΏΠΈΡΠΈ ΠΠΎΠ»Π½ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ React JS material-ui ΠΎΡΠΊΠ»ΡΡΠ΅Π½Ρ 1,821 ΠΡΠΎΡΠΌΠΎΡΡΠΎΠ²
ΠΡ Π°Π²ΡΠΎΡΠ°: Π² React JS material-ui β ΡΡΠΎ ΡΠ°ΡΡΡ Material Design. Material Design β ΡΡΠΎ ΡΠ·ΡΠΊ Π΄ΠΈΠ·Π°ΠΉΠ½Π°, Π²ΠΏΠ΅ΡΠ²ΡΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ Google Π² 2014 Π³ΠΎΠ΄Ρ. ΠΡΠΎ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ°ΠΊΠ΅ΡΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ΅ΡΠΊΠΈ, Π³ΠΈΠ±ΠΊΡΡ Π°Π½ΠΈΠΌΠ°ΡΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ, Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΈ ΡΡΡΠ΅ΠΊΡΡ Π³Π»ΡΠ±ΠΈΠ½Ρ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΡΠ²Π΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ ΡΠ΅Π½ΠΈ. Π¦Π΅Π»Ρ Material Design ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΡΡΠ΅ΠΌ Π²Π΅ΡΠ°ΠΌ: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅, Π£Π½ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΈ ΠΠ°ΡΡΡΠΎΠΉΠΊΠ°.
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ β Material Design Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ Π½Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ·ΡΠΊΠ°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΈΠ½ΡΠ΅Π·ΠΈΡΡΠ΅Ρ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΠΈΠ½ΡΠΈΠΏΡ Π΄ΠΈΠ·Π°ΠΉΠ½Π°. Π£Π½ΠΈΡΠΈΠΊΠ°ΡΠΈΡ β ΠΎΠ½ Π½Π°ΡΠ΅Π»Π΅Π½ Π½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π΅Π΄ΠΈΠ½ΠΎΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π° ΡΠ°Π·Π½ΡΡ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°Ρ , ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°Ρ Π²Π²ΠΎΠ΄Π°. Π ΠΠ°ΡΡΡΠΎΠΉΠΊΠ° ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ·ΡΠΊ ΠΈ Π³ΠΈΠ±ΠΊΡΡ ΠΎΡΠ½ΠΎΠ²Ρ Π΄Π»Ρ ΠΈΠ½Π½ΠΎΠ²Π°ΡΠΈΠΉ ΠΈ Π±ΡΠ΅Π½Π΄ΠΈΠ½Π³Π°.
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ React Π² ΡΡΠΈΠ»Π΅ Material Design. Π‘ΡΡΠ΅ΡΡΠ²ΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ Π² ΡΡΠΎΠΌ, Π½ΠΎ Π΄Π»Ρ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ material-ui.
ΠΡΠΈΡΡΡΠΏΠ°Π΅ΠΌ ΠΊ ΡΠ°Π±ΠΎΡΠ΅
material-ui β ΡΡΠΎ Π½Π°Π±ΠΎΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² React, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅Ρ Google Material Design (material-ui Π½Π΅Π΄Π°Π²Π½ΠΎ Π²ΡΠΏΡΡΡΠΈΠ»ΠΈ v1 Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ). ΠΡΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡΡΡΡ ΡΠ°ΠΌΠΎ-ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΠΈΠΌΠΈ ΠΈ Π²Π²ΠΎΠ΄ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΡΠΈΠ»ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ.
Π§ΡΠΎΠ±Ρ Π½Π°ΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ Ρ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠΌ-ui, Π²ΡΠ΅, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π°, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π½ΠΈΠΆΠ΅.
npm install @material-ui/core
ΠΠ°Π»Π΅Π΅, Π΄Π°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· ΠΎΡΠ½ΠΎΠ² material-ui, ΠΎΡΠ½ΠΎΡΡΡΠΈΡ ΡΡ ΠΊ Material Design, ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½Π° Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΡΡΡ.
Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΠΊΠ°
ΠΠΎΠ³Π΄Π° ΡΠ΅ΡΡ Π·Π°Ρ ΠΎΠ΄ΠΈΡ ΠΎ Material Design, ΡΡΠΈΡΡΠΎΠΌ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ Roboto. ΠΠ΄Π½Π°ΠΊΠΎ material-ui Π½Π΅ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ Roboto ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. Π¨ΡΠΈΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π² ΠΏΡΠΎΠ΅ΠΊΡ React Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π΄Π²ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ². ΠΠ· CDN:
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500">
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ NPM
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΠΊΠ΅ΡΠ° npm, Π²Π²Π΅Π΄Ρ Π² ΡΠ΅ΡΠΌΠΈΠ½Π°Π»Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
npm install typeface-roboto --save
ΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
import 'typeface-roboto'
material-ui ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Typography. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Typography Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ ΡΠ΅ΠΊΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.
<Typography variant="title" color="inherit">Some text in here</Typography>
Π‘Π²ΠΎΠΉΡΡΠ²ΠΎ variant ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΡΡΠΈΠ»ΠΈ ΠΎΡΠΎΡΠΌΠ»Π΅Π½ΠΈΡ ΡΠ΅ΠΌΡ, Π° color β ΡΡΠΎ ΡΠ²Π΅Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°. ΠΠ½ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ²Π΅ΡΠ° ΡΠ΅ΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ Π΄Π»Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°.
CSS Baseline
ΠΡΠ»ΠΈ Π²Ρ ΠΏΠΈΡΠ°Π»ΠΈ ΠΊΠΎΠ΄ front-end, Π²Ρ ΡΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π½Π°ΡΡ ΠΎ normalize.css. ΠΡΠ»ΠΈ Π½Π΅Ρ, ΡΡΠΎ Π½Π°Π±ΠΎΡ Π΄Π»Ρ Π½ΠΎΡΠΌΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² HTML ΠΈ Π°ΡΡΠΈΠ±ΡΡΠΎΠ² ΡΡΠΈΠ»Π΅ΠΉ. material-ui ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΡ normalize.css β CssBaseline, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΈΠ·ΡΡΠ½ΡΠΉ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΈ ΠΏΡΠΎΡΡΠΎΠΉ Π½Π°Π±ΠΎΡ Π±Π°Π·ΠΎΠ²ΡΡ ΡΡΠΈΠ»Π΅ΠΉ. CSSBaseline Π΄Π΅Π»Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
ΠΠ°ΠΊΡΠ΅ΠΏΠ»ΡΠ΅Ρ ΠΎΡΡΡΡΠΏΡ Π²ΠΎ Π²ΡΠ΅Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ°Ρ
ΠΡΠΈΠΌΠ΅Π½ΡΠ΅Ρ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° Material Design ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠΊΠ»ΡΡΠ°Π΅Ρ ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΡΡΠΎΠ² Π΄Π»Ρ Π»ΡΡΡΠ΅Π³ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΠΈΡΡΠ° Roboto
ΠΠ°Π·ΠΎΠ²ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΈΡΡΠ° Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² html, Π½ΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ, ΡΡΠΎ ΡΡΠΎ 16px (ΡΠ°Π·ΠΌΠ΅Ρ Π±ΡΠ°ΡΠ·Π΅ΡΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ)
Π‘Π΅ΡΠΊΠ°
ΠΠ΄Π°ΠΏΡΠΈΠ²Π½ΡΠΉ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Material Design ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΌΠ°ΠΊΠ΅ΡΠ΅ Ρ 12 ΡΡΠΎΠ»Π±ΡΠ°ΠΌΠΈ. ΠΡΠ° ΡΠ΅ΡΠΊΠ° ΡΠΎΠ·Π΄Π°Π΅Ρ Π²ΠΈΠ·ΡΠ°Π»ΡΠ½ΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°Π½Π½ΠΎΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠ°ΠΊΠ΅ΡΠ°ΠΌΠΈ.
Π‘ΠΈΡΡΠ΅ΠΌΠ° ΡΠ΅ΡΠΊΠΈ material-ui Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΠ΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Flexbox
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΄Π²Π° ΡΠΈΠΏΠ° ΠΌΠ°ΠΊΠ΅ΡΠΎΠ²: ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΡ ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ
Π¨ΠΈΡΠΈΠ½Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π·Π°Π΄Π°Π΅ΡΡΡ Π² ΠΏΡΠΎΡΠ΅Π½ΡΠ°Ρ , ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ Π²ΡΠ΅Π³Π΄Π° ΡΠ²Π»ΡΡΡΡΡ Π³ΠΈΠ±ΠΊΠΈΠΌΠΈ ΠΈ ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΊΠ°Π·Π°Π½ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°
ΠΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΈΠΌΠ΅ΡΡ ΠΎΡΡΡΡΠΏΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ.
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΏΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»ΡΠ½ΡΡ ΡΠΎΡΠ΅ΠΊ ΡΠ΅ΡΠΊΠΈ: xs, sm, md, lg ΠΈ xl
ΠΠΊΠΎΠ½ΠΊΠΈ
ΠΠΊΠΎΠ½ΠΊΠΈ β Π²Π°ΠΆΠ½Π°Ρ ΡΠ°ΡΡΡ Material Design, ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈ Ρ.Π΄. ΠΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΡΠ°ΠΉΠ»Π°, ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΠ»ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°.
ΠΠΊΠΎΠ½ΠΊΠΈ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΊΠ°ΠΊ Β«Π ΠΊΠΎΡΠ·ΠΈΠ½ΡΒ», Β«ΠΠ΅ΡΠ°ΡΡΒ» ΠΈ Β«Π‘ΠΎΡ ΡΠ°Π½ΠΈΡΡΒ», ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π² ΠΏΠ°Π½Π΅Π»ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΏΠ°Π½Π΅Π»ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ², ΠΊΠ½ΠΎΠΏΠΊΠ°Ρ ΠΈ ΡΠΏΠΈΡΠΊΠ°Ρ .
ΠΠΊΠΎΠ½ΠΊΠΈ Π² material-ui ΠΌΠΎΠ³ΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄Π²ΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²: Icon Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΡΠΈΡΡΠΎΠ² ΠΈΠΊΠΎΠ½ΠΎΠΊ ΠΈ SvgIcon Π΄Π»Ρ Π²ΠΈΠ·ΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ SVG ΠΊΠΎΠ½ΡΡΡΠΎΠ².
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ SvgIcon ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΡΠ»Π΅ΠΌΠ΅Π½Ρ SVG-ΠΊΠΎΠ½ΡΡΡΠ° Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ²ΠΎΠ΅Π³ΠΎ Π΄ΠΎΡΠ΅ΡΠ½Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΈ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΡΠ΅Ρ Π΅Π³ΠΎ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ React, ΠΊΠΎΡΠΎΡΡΠΉ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΠΊΠΎΠ½ΡΡΡ, ΠΈ Π΄Π΅Π»Π°Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΡΠΈΠ»Π΅ΠΉ ΠΈΠΊΠΎΠ½ΠΊΠΈ ΠΈ ΡΠ΅Π°ΠΊΡΠΈΡ Π½Π° ΡΠΎΠ±ΡΡΠΈΡ ΠΌΡΡΠΈ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π² ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅:
Material- ui ΡΠ°ΠΊΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ°ΠΊΠ΅Ρ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Ρ ΠΏΡΠ΅Π΄ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΠΌΠΈ ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ΄ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ React. ΠΡΠΎ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ³ΠΎΠΉ ΠΏΠ°ΠΊΠ΅Ρ, ΠΈ ΠΎΠ½ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΈΠΊΠΎΠ½ΠΊΠΈ Material, ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½Π½ΡΠ΅ Π² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ SvgIcon. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
npm install @material-ui/icons
ΠΠ½ΠΎΠΏΠΊΠΈ
ΠΠ½ΠΎΠΏΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈ Π΄Π΅Π»Π°ΡΡ Π²ΡΠ±ΠΎΡ ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ. ΠΠ½ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠΎΠΎΠ±ΡΠ°ΡΡ ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΈ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠ΅Π΄ΠΏΡΠΈΠ½ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ material-ui ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Ρ, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Button.
import Button from '@material-ui/core/Button'; <Button color="primary">Hello World</Button>
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Button ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΠΊΠ²ΠΈΠ·ΠΈΡΠΎΠ², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΡΠ²Π΅Ρ, Π²Π°ΡΠΈΠ°Π½Ρ, ΡΠ°Π·ΠΌΠ΅Ρ ΠΈ Ρ. Π΄. ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π·Π΄Π΅ΡΡ.
ΠΠ½ΠΎΠΏΠΊΠΈ Π² Material-ui ΠΈ Material Design Π² ΡΠ΅Π»ΠΎΠΌ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π»ΡΠ±ΡΡ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠΎΡΠΌ:
ΠΠ»ΠΎΡΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ
ΠΠ»ΠΎΡΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ β ΡΡΠΎ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ. ΠΠ½ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ ΡΠ²Π΅ΡΠ° ΡΠΎΠ½Π° ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π³ΡΠ°Π½ΠΈΡΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π°Ρ , ΠΏΠ°Π½Π΅Π»ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ»ΠΈ Π²ΡΡΡΠ°ΠΈΠ²Π°ΡΡΡΡ Π² ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ. ΠΠ½ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡΡ Π·Π°Π»ΠΈΠ²ΠΊΠΈ, Π½ΠΎ ΠΏΡΠΈ ΠΏΠ΅ΡΠ°ΡΠΈ Π·Π°ΠΏΠΎΠ»Π½ΡΡΡΡΡ ΡΠ²Π΅ΡΠΎΠΌ.
<Button color="primary">Primary</Button>
ΠΠΎΠ½ΡΡΡΠ½ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ
ΠΠΎΠ½ΡΡΡΠ½ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ β ΡΡΠΎ ΡΠ΅ΠΊΡΡΠΎΠ²ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΡΡΠ΅Π΄Π½Π΅ΠΉ Π²ΡΡΠ°Π·ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠ½ΠΈ Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ ΠΊΠ°ΠΊ ΠΏΠ»ΠΎΡΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π½ΠΎ ΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ½ΡΡΡ ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ Π²Π°ΠΆΠ½ΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, Π½ΠΎ Π½Π΅ ΡΠ²Π»ΡΡΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. ΠΡ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π²ΠΈΠ΄ ΠΎΠ±ΡΡΠ½ΠΎ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΠ·ΡΠ΅ΡΡΡ Π³ΡΠ°Π½ΠΈΡΠ΅ΠΉ ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π΅ΡΠ° ΡΠΎΠ½Π° ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ.
<Button variant="outlined">Default</Button>
ΠΠΎΠ΄Π½ΡΡΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ
ΠΠΎΠ΄Π½ΡΡΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ. ΠΠ½ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ²Π΅Ρ ΡΠΎΠ½Π° ΠΈ ΡΠΌΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΠΈ Π½Π°Π²Π΅Π΄Π΅Π½ΠΈΠΈ.
<Button variant="raised" color="secondary">Secondary</Button>
ΠΠΈΠ±ΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ
ΠΠΈΠ±ΠΊΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ (FAB) ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΈΡΡΠΌΠ°, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ°ΠΊΡΠ° ΠΈΠ»ΠΈ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΠ½ΠΈ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΠΌΡ ΠΊΡΡΠ³Π° ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ Π²ΡΠ΅Ρ Π΄ΡΡΠ³ΠΈΡ Π²ΠΈΠ΄ΠΎΠ² ΠΊΠ½ΠΎΠΏΠΎΠΊ. ΠΡΠΈ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΠΈ ΡΠΎΠΊΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΎΡΠ»ΠΈΡΠ½ΡΠΉ ΡΠ²Π΅Ρ ΡΠΎΠ½Π°, ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠΊΠ΅ ΠΎΠ½ΠΈ ΡΠΌΠ΅ΡΠ°ΡΡΡΡ. ΠΠ½ΠΈ ΠΌΠΎΠ³ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΊΠ°Π·Π°ΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΈΠ»ΠΈ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΠΏΡΠΈ Π½Π°ΠΆΠ°ΡΠΈΠΈ.
<Button variant="fab" color="primary" aria-label="add"><AddIcon /</Button>
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ material-ui
material-ui ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³Π°ΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ React Π² ΡΠ΅ΠΌΠ΅ Material Design. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ material-ui. ΠΠ»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠΎΠ΄ Π½Π° CodeSandbox, ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ ΠΏΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌ ΡΡΡΠ»ΠΊΠ°ΠΌ.
ΠΠ°Π½Π΅Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
ΠΠ°Π½Π΅Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°Π½Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½Π°Ρ ΠΊΠ°ΠΊ ΠΏΠ°Π½Π΅Π»Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ Π² Android, Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠΎΠ»Ρ ΠΌΠ΅Π½Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ.
import AppBar from '@material-ui/core/AppBar'; import Toolbar from '@material-ui/core/Toolbar';
ΠΠ°Π²ΠΈΠ³Π°ΡΠΈΡ
ΠΠΈΠΆΠ½ΠΈΠ΅ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΌΠ΅Π½Ρ ΡΠ°ΡΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π²Π½ΠΈΠ·Ρ, ΠΎΠ½ΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π»Π΅Π³ΠΊΠΎ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΎΠ΄Π½ΠΈΠΌ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ.
ΠΠ΅Π½Ρ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΡ ΡΡΠ΅Ρ Π΄ΠΎ ΠΏΡΡΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ, ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΈΠΊΠΎΠ½ΠΊΡ ΠΈ ΠΌΠ΅ΡΠΊΡ. ΠΠ°ΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π½Π°Π²ΠΈΠ³Π°ΡΠΈΠΎΠ½Π½ΡΠ΅ ΠΏΠ°Π½Π΅Π»ΠΈ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΡΠ΅ΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΊΠ°ΠΊ ΠΈΠΊΠΎΠ½ΠΊΡ, ΡΠ°ΠΊ ΠΈ ΠΌΠ΅ΡΠΊΡ.
ΠΠΊΠ»Π°Π΄ΠΊΠΈ
ΠΠΊΠ»Π°Π΄ΠΊΠΈ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ ΠΈ ΠΏΠ΅ΡΠ΅ΠΊΠ»ΡΡΠ°ΡΡΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌΠΈ. ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΡΡΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ Π±Π΅Π· Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π½ΠΈΠΆΠ΅, ΠΈΠ»ΠΈ ΠΏΡΠΎΠΊΡΡΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΎΠΉ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌΠΈ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΌΠΈ Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ. ΠΠΊΠ»Π°Π΄ΠΊΠ° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΡΡΠΎΡΡΡ ΠΈΠ· ΠΈΠΊΠΎΠ½ΠΎΠΊ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² / ΡΡΠ»ΡΠΊΠΎΠ².
Π‘ΠΏΠΈΡΠΊΠΈ
Π‘ΠΏΠΈΡΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠ½ΠΊΡΠΎΠ², ΡΠ°ΡΠΏΠΎΠ»ΠΎΠΆΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ Π΅Π΄ΠΈΠ½ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ. Π‘ΠΏΠΈΡΠΊΠΈ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· Π½Π΅ΠΏΡΠ΅ΡΡΠ²Π½ΠΎΠ³ΠΎ ΡΡΠΎΠ»Π±ΡΠ° ΡΡΡΠΎΠΊ. ΠΠ°ΠΆΠ΄Π°Ρ ΡΡΡΠΎΠΊΠ° ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΏΠ»ΠΈΡΠΊΡ. ΠΠ΅ΡΠ²ΠΈΡΠ½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ ΠΏΠ»ΠΈΡΠΊΠ°ΠΌΠΈ, Π° Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ β ΠΈΠΊΠΎΠ½ΠΊΠ°ΠΌΠΈ ΠΈ ΡΠ΅ΠΊΡΡΠΎΠΌ.
ΠΠ°ΡΡΠΎΡΠΊΠΈ
ΠΠ°ΡΡΠΎΡΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π»ΠΈΡΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ»ΡΠΆΠΈΡ ΡΠΎΡΠΊΠΎΠΉ Π²Ρ ΠΎΠ΄Π° Π² Π±Π»ΠΎΠΊ Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ΅ΠΉ. ΠΠ°ΡΡΠΎΡΠΊΠΈ β ΡΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΡΡΠ΅Π΄ΡΡΠ²ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ°, ΡΠΎΡΡΠΎΡΡΠ΅Π³ΠΎ ΠΈΠ· ΡΠ°Π·Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ°ΡΡΠΎΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ, ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΏΡΠΈΠ·ΡΠ² ΠΊ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
ΠΠΎΠ΄Π°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ
ΠΠΎΠ΄Π°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ ΠΎΡΠ½ΠΎΠ²Ρ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ², Π²ΡΠΏΠ»ΡΠ²Π°ΡΡΠΈΡ ΠΎΠΊΠΎΠ½, Π»Π°ΠΉΡΠ±ΠΎΠΊΡΠΎΠ² ΠΈ Ρ.Π΄. ΠΡΡΠΊΠΈΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° Π½Π°ΠΆΠΈΠΌΠ°Π΅ΡΡΡ ΠΌΠΎΠ΄Π°Π»ΡΠ½Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°, ΠΎΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
Π£ΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΡΠ΅ΠΊΠΎΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³Π°
Π‘ΠΎΠ·Π΄Π°Π΅Ρ ΡΠΎΠ½, Π΄Π»Ρ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π½ΠΈΠΆΠ΅ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ
ΠΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠΊΡΡΠΎΠΌ, ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Ρ ΠΊ ΠΌΠΎΠ΄Π°Π»ΡΠ½ΠΎΠΌΡ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΡ Π΅Π³ΠΎ, ΠΏΠΎΠΊΠ° ΠΌΠΎΠ΄Π°Π»ΡΠ½ΡΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΊΡΡΡ
ΠΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠΊΡΡΡΠΊΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΡΠΈ ΠΎΡΠΊΡΡΡΠΈΠΈ
ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠΎΠ»ΠΈ ARIA
Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠΊΠΈ
Π‘ΠΏΠΈΡΠΊΠΈ ΡΠ΅ΡΠΊΠΈ ΡΠ²Π»ΡΡΡΡΡ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²ΠΎΠΉ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡΠΌ ΡΠΏΠΈΡΠΊΠΎΠ², ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΡΠΌ Π²ΡΡΠ΅. Π‘ΠΏΠΈΡΠΎΠΊ ΡΠ΅ΡΠΊΠΈ ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· ΠΏΠΎΠ²ΡΠΎΡΡΡΡΠ΅Π³ΠΎΡΡ ΡΠ°Π±Π»ΠΎΠ½Π° ΡΡΠ΅Π΅ΠΊ, ΡΠ°Π·ΠΌΠ΅ΡΠ΅Π½Π½ΡΡ Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎ ΠΈ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎ, ΠΈ Π² Π½ΠΈΡ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΡΠ²ΠΎΠ΄ΡΡΡΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠΏΠΈΡΠΊΠ° Grid ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π½ΠΈΠΆΠ΅, ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ GridListTileBar Π΄Π»Ρ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΡ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΠΊΠ°ΠΆΠ΄ΡΠΉ GridListTile. ΠΠ°Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ, ΠΏΠΎΠ΄Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΈ Π²ΡΠΎΡΠΈΡΠ½ΠΎΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ β Π² ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ IconButton β ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ.
Π’Π°Π±Π»ΠΈΡΡ
Π ΡΠ°Π±Π»ΠΈΡΠ°Ρ
Π΄Π°Π½Π½ΡΡ
ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΡΡ Π½Π°Π±ΠΎΡΡ Π½Π΅ΠΎΠ±ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΡ
Π΄Π°Π½Π½ΡΡ
. ΠΠ½ΠΈ ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΡΡΠ°ΡΠΈΠΎΠ½Π°ΡΠ½ΡΡ
ΠΊΠΎΡΠΏΠΎΡΠ°ΡΠΈΠ²Π½ΡΡ
ΠΏΡΠΎΠ΄ΡΠΊΡΠ°Ρ
.
Π’Π°Π±Π»ΠΈΡΠ° Π΄Π°Π½Π½ΡΡ
ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΡΡΠΎΠΊΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π²Π²Π΅ΡΡ
Ρ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½Ρ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠΎΠ»Π±ΡΠΎΠ², Π° Π·Π°ΡΠ΅ΠΌ ΡΡΡΠΎΠΊΠΈ Π΄Π°Π½Π½ΡΡ
. ΠΠ»Ρ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ ΠΏΠ΅ΡΠ²ΡΠΉ ΡΡΠΎΠ»Π±Π΅Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° th ΡΠΎ scope β Β«rowΒ». ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠΊΡΠ°Π½Π½ΡΠΌ Π΄ΠΈΠΊΡΠΎΡΠ°ΠΌ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΠΉΠΊΠΈ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΡΡΡΠΎΠΊΠΈ ΠΈ ΡΡΠΎΠ»Π±ΡΠ°.
Π Π°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°Π±Π»ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ Π² ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΠ΅. ΠΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡΡΡ ΡΠ΅ΠΊ-Π±ΠΎΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΡΡΡΡ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΡΡΠΎΠΊΠ΅, Π΅ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½ΡΠΆΠ½ΠΎ Π²ΡΠ±ΠΈΡΠ°ΡΡ ΠΈΠ»ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΠ΄Π΅ΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΊΠ»ΠΈΠ±Π°Π»ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΈΡ Π²ΡΠ±ΠΎΡΠ°.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΠΎΠΏΡΠΎΡ Π² ΡΠΎΠΌ, Π΄ΠΎΠ»ΠΆΠ½Ρ Π»ΠΈ Π²Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Material Design Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡΠΎΠ΅ΠΊΡΠ΅ React? ΠΡΠ²Π΅Ρ Π½Π° ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΈ ΡΠΎΠ³ΠΎ, ΡΠ΅Π³ΠΎ Π²Ρ ΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ Π΄ΠΎΡΡΠΈΡΡ. Material Design ΠΌΠΎΠΆΠ΅Ρ Π΄Π°ΡΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ² Π΄Π»Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΡΡ Π²Π°ΡΠΈΡ Π΄ΠΈΠ·Π°ΠΉΠ½Π΅ΡΠΎΠ² Π·Π°Π΄ΡΠΌΠ°ΡΡΡΡ ΠΎ ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡ Π½Π° ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠΈΡ ΠΏΡΠΈΠ½ΡΠΈΠΏΠ°Ρ .
Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΠΏΡΡΠ°Π΅ΡΠ΅ΡΡ ΠΏΡΠΎΠ²Π΅ΡΡΠΈ ΡΠ΅Π±ΡΠ΅Π½Π΄ΠΈΠ½Π³, Material Design ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ Π±ΡΡΡ ΡΠ΅ΠΌ, ΡΡΠΎ Π²Ρ ΠΈΡΠ΅ΡΠ΅. ΠΡ Ρ ΠΎΡΠΈΡΠ΅, ΡΡΠΎΠ±Ρ Π²Π°Ρ Π±ΡΠ΅Π½Π΄ Π²ΡΠ³Π»ΡΠ΄Π΅Π» ΠΊΠ°ΠΊ ΡΠΎΡΠ½ΠΈ Π΄ΡΡΠ³ΠΈΡ Π²Π΅Π±-ΡΠ°ΠΉΡΠΎΠ² Π² ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΠ΅? ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΡΡΠΈΡΡ Π΄ΡΡΠ³ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Material Design, ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ response-md, materialize (CSS framework).
ΠΠ²ΡΠΎΡ: Yomi
ΠΡΡΠΎΡΠ½ΠΈΠΊ: https://blog.logrocket.com/
Π Π΅Π΄Π°ΠΊΡΠΈΡ: ΠΠΎΠΌΠ°Π½Π΄Π° webformyself.
ΠΠΎΡΠΎΠ²ΡΠ΅ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ Π½Π°Π²ΡΠ΅Π³Π΄Π°
MUI Core
ΠΠΎΠ»ΡΡΠΈΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΡΠ°ΡΡΡΡΠΈΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² React, Π³ΠΎΡΠΎΠ²ΡΡ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ, Π±Π΅ΡΠΏΠ»Π°ΡΠ½Ρ Π½Π°Π²ΡΠ΅Π³Π΄Π° ΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎΠΌΠ½ΠΈΡΠ΅ ΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΎΡΡΠΈ. ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π±Π°Π·ΠΎΠ²ΡΠ΅ Π±Π»ΠΎΠΊΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½-ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΠΎΡΡΠΎΠΌΡ Π²Π°ΠΌ ΡΡΠΎ Π½Π΅ Π½ΡΠΆΠ½ΠΎ.
ΠΠ°ΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΡΠΠΎΠΈΡΠΊ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ React UI
2Spot MUI
3ΠΡΠ±ΡΠ°ΡΡ MUI
ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ MUI ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎ. ΠΠ½ΠΈ ΡΠ°ΠΌΠΎΠ΄ΠΎΡΡΠ°ΡΠΎΡΠ½Ρ ΠΈ Π±ΡΠ΄ΡΡ Π²Π½Π΅Π΄ΡΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΡΠΈΠ»ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠΌ Π½ΡΠΆΠ½Ρ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ.
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΡΠ·ΡΠΊΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠ»ΡΡΡΠ΅Π½ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ Π²Π°ΠΆΠ½ΡΡ Π³Π»ΠΎΠ±Π°Π»ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ , ΠΎ ΠΊΠΎΡΠΎΡΡΡ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ.
Π’Π΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ½ΡΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½
ΠΠΎΠ΄Π²Π°Π»
ΠΠΎΠ΄Π²Π°Π»0,5 ΠΠ²Π΅Π·Π΄1 ΠΠ²Π΅Π·Π΄Π°1,5 ΠΠ²Π΅Π·Π΄Π°2 ΠΠ²Π΅Π·Π΄Π°2,5 ΠΠ²Π΅Π·Π΄Π°3 ΠΠ²Π΅Π·Π΄Π°3,5 ΠΠ²Π΅Π·Π΄Π°4 ΠΠ²Π΅Π·Π΄Π°4,5 ΠΠ²Π΅Π·Π΄Π°5 ΠΠ²Π΅Π·Π΄Π°ΠΡΡΡΠΎΠΉ ΡΠΈΠ»Π° Π»Π΅Π΄Π½ΠΈΠΊΠΎΠ², ΠΏΠΎΡΡΠΎΡΠ½ΡΡΠ²ΠΎ ΠΆΠΈΠ·Π½ΠΈ ΠΈ ΡΠΏΠΎΠΊΠΎΠΉΡΡΠ²ΠΈΠ΅ ΠΡΡΠΎΠΊΠΎΠΉ Π‘ΡΠ΅ΡΡΡ. ΠΠ½ ΡΠ»Π°Π²ΠΈΡΡΡ ΡΠ²ΠΎΠΈΠΌΠΈ Π³ΠΈΠ³Π°Π½ΡΡΠΊΠΈΠΌΠΈ Π΄ΡΠ΅Π²Π½ΠΈΠΌΠΈ ΡΠ΅ΠΊΠ²ΠΎΠΉΡΠΌΠΈ ΠΈ Π³ΡΠ°Π½ΠΈΡΠ½ΡΠΌΠΈ ΡΠΊΠ°Π»Π°ΠΌΠΈ ΠΠ»Ρ-ΠΠ°ΠΏΠΈΡΠ°Π½ ΠΈ Π₯Π°Ρ-ΠΠΎΡΠΌ.
ΠΡΡΡΠΈΠ΅ Π² ΠΌΠΈΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² Π΄ΠΎΠ²Π΅ΡΡΡΡ MUI ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π΅ΠΏΡΠ΅Π²Π·ΠΎΠΉΠ΄Π΅Π½Π½ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠ΅ΠΉ ΠΊΠ°ΠΊ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ², ΡΠ°ΠΊ ΠΈ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ.
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ²
ΠΠΎΠ»Π΅Π΅ 40 ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² ΡΡΡΠΎΠΈΡΠ΅Π»ΡΠ½ΡΡ Π±Π»ΠΎΠΊΠΎΠ²
ΠΡ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ Π²Π°ΠΌ Π΅ΡΠ΅ Π±ΡΡΡΡΠ΅Π΅ Π·Π°ΠΏΡΡΡΠΈΡΡ ΠΊΠ»Π°ΡΡΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ, ΠΎ ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΠΌΠ΅ΡΡΠ°Π»ΠΈ. ΠΡ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π²Π°ΡΡ ΡΠΏΠΈΠ½Ρ!
ΠΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅}> ΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°> }> ΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°> }> ΠΠΎΠ±Π°Π²ΠΈΡΡ Π² ΠΊΠΎΡΠ·ΠΈΠ½Ρ ΠΊΠ½ΠΎΠΏΠΊΠ°> Π΄Π΅Π»> Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΡΠΈΠ»Ρ!
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Π΄ΠΈΠ·Π°ΠΉΠ½Π°, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅ΠΌ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°ΡΠ°ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Google Material Design.
Π’Π΅ΠΌΡ
Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΡ Π΄ΠΈΠ·Π°ΠΉΠ½-ΡΠΈΡΡΠ΅ΠΌΡ ΡΠ°ΠΊΠΎΠΉ, ΠΊΠ°ΠΊΠΎΠΉ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ Π΅Π΅ Π²ΠΈΠ΄Π΅ΡΡ
ΠΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ Π»Π΅Π³ΠΊΠΎ Π°Π΄Π°ΠΏΡΠΈΡΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΊ Π²Π°ΡΠΈΠΌ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌ. ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π±ΡΡΡΡΠΎ Π½Π°ΡΠ°ΡΡ Ρ Material Design.
Π£Π»ΡΡΡΠ°ΡΠΈΠΎΠ»Π΅Ρ
ΠΠΎΠ΄Π²Π°Π» β’ Π ΡΠ΄ΠΎΠΌ Ρ ΡΠΎΠ±ΠΎΠΉ <ΠΠ°ΡΡΠ° Π²Π°ΡΠΈΠ°Π½Ρ = "Π² ΠΎΠ±ΡΠΈΡ ΡΠ΅ΡΡΠ°Ρ " Ρ = {{ Ρ: 1, Π΄ΠΈΡΠΏΠ»Π΅ΠΉ: Β«Π³ΠΈΠ±ΠΊΠΈΠΉΒ», flexDirection: {xs: 'ΡΡΠΎΠ»Π±Π΅Ρ', sm: 'ΡΡΡΠΎΠΊΠ°'}, }} ><Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡ Π²Π°ΡΠΈΠ°Π½Ρ = "ΡΠ΅Π»ΠΎ1" ΡΠ²Π΅Ρ = "ΡΠ΅ΠΊΡΡ.ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ" fontWeight={600} Ρ = {{ textAlign: {xs: 'ΡΠ΅Π½ΡΡ', sm: 'Π½Π°ΡΠ°Π»ΠΎ'}, ΠΌΡ: {ΠΊΡ: 1,5, ΡΠΌ: 0}, }} > ΡΠ»ΡΡΡΠ°ΡΠΈΠΎΠ»Π΅Ρ Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡ> <Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ = "Π΄Π΅Π»" Π²Π°ΡΠΈΠ°Π½Ρ = "Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ" ΡΠ²Π΅Ρ = "ΡΠ΅ΠΊΡΡ. Π²ΡΠΎΡΠΈΡΠ½ΡΠΉ" fontWeight={500} sx={{ textAlign: {xm: 'ΡΠ΅Π½ΡΡ', sm: 'Π½Π°ΡΠ°Π»ΠΎ' } }} > ΠΠΎΠ΄Π²Π°Π» β’ ΠΠ½Π΅ ΡΠ΅Π±Ρ Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡ> <Π‘ΡΠ΅ΠΊ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ = "ΡΡΠ΄" ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» = {1} Ρ = {{ ΠΌ: 2, justifyContent: {xs: 'space-between', sm: 'flex-start'}, }} > <ΠΠ½ΠΎΠΏΠΊΠ° ΡΠΎ Π·Π½Π°ΡΠΊΠΎΠΌ aria-label={ΠΏΠ°ΡΠ·Π°? 'Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅' : 'ΠΏΠ°ΡΠ·Π°'} sx={{ΠΌΡ : 1}} onClick={() => setPaused((val) => !val)} > {ΠΏΠ°ΡΠ·Π°? : } ΡΡΠ΅ΠΊ> ΠΊΠΎΡΠΎΠ±ΠΊΠ°> ΠΠ°ΡΡΠΎΡΠΊΠ°> Π‘ΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΡ
ΠΡΡΡΡΠΎΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π»ΡΠ±ΡΡ ΡΡΠΈΠ»Π΅ΠΉ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡ CSS
Π£ΡΠΈΠ»ΠΈΡΡ CSS ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π±ΡΡΡΡΠ΅Π΅ ΠΈ ΡΠΏΡΠΎΡΠ°ΡΡ ΡΠ°Π±ΠΎΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° ΠΏΡΠΈ ΡΡΠΈΠ»ΠΈΠ·Π°ΡΠΈΠΈ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°.
123 Main St, Phoenix, AZ
$280 000 — $310 000
Π£ΡΠΎΠ²Π΅Π½Ρ Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎΡΡΠΈ 85%
<Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΡΠΊΠΈΠΉ Π²Π°ΡΠΈΠ°Π½Ρ="body2" color="text.secondary"> 123 Main St, Π€ΠΈΠ½ΠΈΠΊΡ, ΠΡΠΈΠ·ΠΎΠ½Π° Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡ> <ΠΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΠΊΠΈ="div" fontWeight="bold"> 280Β 000Β β 310Β 000Β Π΄ΠΎΠ»Π»Π°ΡΠΎΠ² Π‘Π¨Π Π’ΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΡ> <ΠΠΎΡΠΎΠ±ΠΊΠ° Ρ = {{ ΠΌΠ»: -1, ΠΌΡ: 0,75, ΠΏΠΈΠΊΡ: 1, ΡΡ: 0,5, Π³ΡΠ°Π½ΠΈΡΠ°Π Π°Π΄ΠΈΡΡ: 1, Π΄ΠΈΡΠΏΠ»Π΅ΠΉ: Β«Π³ΠΈΠ±ΠΊΠΈΠΉΒ», ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΠΊΠ°: 'Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ', bgcolor: (ΡΠ΅ΠΌΠ°) => theme. palette.mode === 'ΡΠ΅ΠΌΠ½ΡΠΉ' ? 'ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΡΠΉ.900' : "ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ.50", ΡΠ²Π΅Ρ: (ΡΠ΅ΠΌΠ°) => theme.palette.mode === 'ΡΠ΅ΠΌΠ½ΡΠΉ' ? '#fff' : 'ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ.700', }} > Π£ΡΠΎΠ²Π΅Π½Ρ Π΄ΠΎΡΡΠΎΠ²Π΅ΡΠ½ΠΎΡΡΠΈ 85% ΠΊΠΎΡΠΎΠ±ΠΊΠ°> ΠΊΠΎΡΠΎΠ±ΠΊΠ°> Π‘ΠΎΠΎΠ±ΡΠ΅ΡΡΠ²ΠΎ
ΠΠΎΠ»ΡΡΠ°ΠΉΡΠ΅ ΠΈ ΠΏΠΎΠΌΠΎΠ³Π°ΠΉΡΠ΅, ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΠ²ΡΠΈΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ ΡΡΠ°ΡΡΠ½ΠΈΠΊΠΎΠ²
ΠΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π±ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ ΡΡΠΊΠ°ΠΌΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΡ ΠΌΠΈΡΡ. ΠΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡΠ΅ΡΡ ΠΊ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠΎΡΡ Π½Π°ΠΌ ΡΠ°ΡΡΠΈΡΠΈΡΡ Π΅Π³ΠΎ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅!
Π£Π·Π½Π°ΠΉΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅3,2 ΠΌ
ΠΠΆΠ΅Π½Π΅Π΄Π΅Π»ΡΠ½ΡΠ΅ Π·Π°Π³ΡΡΠ·ΠΊΠΈ Π½Π° NPM
78K
ΠΠ²Π΅Π·Π΄Ρ Π½Π° GitHub
2,4K
ΠΠΊΠ»Π°Π΄ΡΠΈΠΊΠΈ Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ
17K
Π‘Π²ΠΈΡΡΠΈΠ½Ρ Π² Π’Π²ΠΈΡΡΠ΅ΡΠ΅
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° — ΠΠ°ΡΠ΅ΡΠΈΠ°Π» UI
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°. ΡΠ°ΠΌΡΠΉ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΉ Π² ΠΌΠΈΡΠ΅ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ React UI.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΡΠΎΠ±Ρ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ:
npm
npm install @mui/material @emotion/react @emotion/styledΠΏΡΡΠΆΠ°
ΠΏΡΡΠΆΠ° Π΄ΠΎΠ±Π°Π²ΠΈΡΡ @mui/material @emotion/react @emotion/styledΠ‘ΠΎ ΡΡΠΈΠ»Π΅Π²ΡΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ
ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Emotion Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° ΡΡΠΈΠ»Π΅ΠΉ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΡΠ»ΠΈ Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠΈΠ»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄:
npm
npm install @mui/material @mui/styled-engine-sc styled-componentsΠΏΡΡΠΆΠ°
ΠΏΡΡΠΆΠ° Π΄ΠΎΠ±Π°Π²ΠΈΡΡ @mui/material @mui/styled-engine-sc styled-componentsΠΠΎΡΠ΅ΡΠΈΡΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ ΠΏΠΎ Π΄Π²ΠΈΠΆΠΊΡ Styled Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊ Π½Π°ΡΡΡΠΎΠΈΡΡ styled-components.
ΠΠ΄Π½ΠΎΡΠ°Π½Π³ΠΎΠ²ΡΠ΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ
react
>= 17.0.0 ΠΈreact-dom
>= 17.0.0 ΡΠ²Π»ΡΡΡΡΡ ΠΎΠ΄Π½ΠΎΡΠ°Π½Π³ΠΎΠ²ΡΠΌΠΈ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ.Π¨ΡΠΈΡΡ Roboto
Material UI ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠΈΡΡΠ° Roboto ΡΡΠΈΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ npm ΠΈΠ»ΠΈ yarn ΡΠ΅ΡΠ΅Π· Fontsource ΠΈΠ»ΠΈ ΡΠ΅ΡΠ΅Π· CDN Google Fonts.
Π½ΠΏΠΌ
Π½ΠΏΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ @fontsource/robotoΠΏΡΡΠΆΠ°
ΠΏΡΡΠΆΠ° Π΄ΠΎΠ±Π°Π²ΠΈΡΡ @fontsource/robotoΠΠ°ΡΠ΅ΠΌ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ Π² ΡΠ²ΠΎΡ ΡΠΎΡΠΊΡ Π²Ρ ΠΎΠ΄Π° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΈΠΌΠΏΠΎΡΡ '@fontsource/roboto/300. css'; ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ '@fontsource/roboto/400.css'; ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ '@fontsource/roboto/500.css'; ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ '@fontsource/roboto/700.css';Fontsource ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ Π΄Π»Ρ Π·Π°Π³ΡΡΠ·ΠΊΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΏΠΎΠ΄Π½Π°Π±ΠΎΡΠΎΠ², Π½Π°ΡΡΡΠ΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΡΡΠΈΠ»Π΅ΠΉ. ΠΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡ ΡΠΈΠΏΠΎΠ³ΡΠ°ΡΠΈΠΊΠΈ Material UI ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°Π²ΠΈΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ Π²Π΅ΡΠ° ΡΡΠΈΡΡΠ° 300, 400, 500 ΠΈ 700.
Google Web Fonts
Π§ΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΡΠΈΡΡ Roboto Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Google Web Fonts CDN, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π² ΡΠ°ΠΉΠ» 9 Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°.0120 <Π³ΠΎΠ»ΠΎΠ²Π° /> ΡΠ΅Π³:
<ΡΡΡΠ»ΠΊΠ° ΠΎΡΠ½ = "ΡΠ°Π±Π»ΠΈΡΠ° ΡΡΠΈΠ»Π΅ΠΉ" href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" />ΠΠ½Π°ΡΠΊΠΈ
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Π·Π½Π°ΡΠΊΠ° ΡΡΠΈΡΡΠ° ΠΈΠ»ΠΈ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π½Π½ΡΠ΅ Π·Π½Π°ΡΠΊΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ² SVG (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π² Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΡ Π·Π½Π°ΡΠΊΠ°Ρ ), Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ½Π°ΡΠ°Π»Π° ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΡΠΈΡΡ Π·Π½Π°ΡΠΊΠΎΠ² ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»ΠΎΠ². ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ npm ΠΈΠ»ΠΈ yarn ΠΈΠ»ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ CDN Google Web Fonts.
Π½ΠΏΠΌ
Π½ΠΏΠΌ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ @mui/icons-materialΠΏΡΡΠΆΠ°
ΠΏΡΡΠΆΠ° Π΄ΠΎΠ±Π°Π²ΠΈΡΡ @mui/icons-materialGoogle Web Fonts
Π§ΡΠΎΠ±Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΡΠΈΡΡ Material Icons Π² ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Google Web Fonts CDN, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΡΡΠ°Π³ΠΌΠ΅Π½Ρ ΠΊΠΎΠ΄Π° Π² ΡΠ΅Π³
Π²Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°:
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ Font
Icon
, Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½Π°ΡΠ°Π»Π° Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΡΠΈΡΡ Material Icons.