Material-ui: [RFC] v5 рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди 5

рдХреЛ рдирд┐рд░реНрдорд┐рдд 24 рдЕрдЧре░ 2020  ┬╖  105рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mui-org/material-ui

рдпрд╣ RFC v5 рдореЗрдВ рд╕рд╛рдордЧреНрд░реА-UI рдХреЗ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИред

рдЯреА рдПрд▓: рдбреЙ;

рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИ?

  • рдПрдХ рдорд╣рд╛рди рд╕реНрдЯрд╛рдЗрд▓ рдЗрдВрдЬрди рдХреЛ рдмрдирд╛рдП рд░рдЦрдиреЗ рдФрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рдордп рд▓рдЧрддрд╛ рд╣реИред рд╣рдордиреЗ рдЗрд╕реЗ рдкрд╣рд▓реЗ рд╣рд╛рде рдХрд╛ рдЕрдиреБрднрд╡ рдХрд┐рдпрд╛ рд╣реИред рдкрд┐рдЫрд▓реЗ 12 рдорд╣реАрдиреЛрдВ рдореЗрдВ, рд╣рдордиреЗ рдЕрдкрдиреЗ рдореБрдЦреНрдп рдореВрд▓реНрдп рдкреНрд░рд╕реНрддрд╛рд╡ рдкрд░ рд╕рдордп рдмрд┐рддрд╛рдирд╛ рдкрд╕рдВрдж рдХрд┐рдпрд╛ рд╣реИ: рдпреВрдЖрдИ рдШрдЯрдХ, рд╕реНрдЯрд╛рдЗрд▓ рдЗрдВрдЬрди рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдпред рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдЙрдЪреНрдЪ рдЕрд╡рд╕рд░ рд▓рд╛рдЧрдд рд╣реИред
  • рд╣рдо рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рдореБрджреНрджреЛрдВ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдХрд╕реНрдЯрдо рдбрд╛рдпрдиреЗрдорд┐рдХ рд╕реНрдЯрд╛рдЗрд▓ рдЗрдореНрдкреНрд▓реАрдореЗрдВрдЯреЗрд╢рди (рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░) рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рд╢реИрд▓реА рдХреЗ рдмрд░реНрддрди , рд░рдВрдЧ рд╕рдВрд╕реНрдХрд░рдг , рдФрд░ рдХрд╕реНрдЯрдо рд╕рдВрд╕реНрдХрд░рдг ред
  • рд░рд┐рдПрдХреНрдЯ рд╕рдореБрджрд╛рдп, рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░, рдЬреЗрдПрд╕рдПрд╕ рдХреЛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рдирд╣реАрдВ рджрд┐рдпрд╛ рд╣реИ (рдЬреЗрдПрд╕рдПрд╕ рдорд╣рд╛рди рд╣реИ рдФрд░ рдЕрднреА рднреА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ)ред 3 рд╕рд╛рд▓ рдкрд╣рд▓реЗ рд╣рдо рдЙрдкрд▓рдмреНрдз рд╕рд░реНрд╡реЛрддреНрддрдо рд╡рд┐рдХрд▓реНрдк рдкрд░ рджрд╛рдВрд╡ рд▓рдЧрд╛рддреЗ рд╣реИрдВ ред рд╣рдореЗрдВ рдкрд╣рдЪрд╛рдирдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдмреЗрд╣рддрд░ рд╡рд┐рдХрд▓реНрдк рдЕрднреА рдЙрдкрд▓рдмреНрдз рд╣реИрдВред рд╣рдо рддреЗрдЬреА рд╕реЗ рдЖрдЧреЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдзрд┐рдХ рд▓реЛрдХрдкреНрд░рд┐рдп, рдореМрдЬреВрджрд╛, рд╕реНрдЯрд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ рдмреЗрд╣рддрд░ DX / UX рдЕрдирд▓реЙрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
  • рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрдд-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдмрдВрдбрд▓ рдореЗрдВ рджреЛ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рдкрд╛рддреЗ рд╣реИрдВред рдорд╣рд╛рди рдирд╣реАрдВред рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдо рдЕрд▓рдЧ-рдЕрд▓рдЧ CSS-in-JS рд▓рд╛рдЗрдмреНрд░реЗрд░реАрдЬрд╝ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рдПрдбреЗрдкреНрдЯрд░ рдкреЗрд╢ рдХрд░ рд╕рдХреЗрдВред (рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛рдПрдВ: рд╣рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдЗрдВрдЬрди рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕реЗ рдорд┐рд▓рд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЦреНрдп рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдкрдбрд╝ рд╕рдХрддрд╛ рд╣реИ)

рдХреНрдпрд╛ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП?

рдЬреЛ рднреА рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдЗрдВрдЬрди рд╣рдо рдЪреБрдирддреЗ рд╣реИрдВ рдЙрд╕рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░рдХреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

  • рдкреНрд░рджрд░реНрд╢рди: рддреЗрдЬреА рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо DX рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рд╡реНрдпрд╛рдкрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВред
  • рдмрдВрдбрд▓ рдХрд╛ рдЖрдХрд╛рд░: рдиреАрдЪреЗ рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди 14.3 kB gzipped рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред
  • рд╕рдорд░реНрдерди рд╕рдорд╡рд░реНрддреА рдореЛрдб: @material-ui/styles рдХрд╛ рдЖрдВрд╢рд┐рдХ рд╕рдорд░реНрдерди рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВред
  • SSR рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ
  • рд╕рд░рд▓ рдЕрдиреБрдХреВрд▓рди
  • рдЧрддрд┐рд╢реАрд▓ рд╕реНрдЯрд╛рдЗрд▓ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВ
  • рдЕрдЪреНрдЫреЗ рд╕рдореБрджрд╛рдп рдХрд╛ рдЖрдХрд╛рд░
  • рдереАрдо
  • рд╕рдорддрд▓ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛
  • RTL
  • рдЯрд╛рдЗрдкрдкреНрд░рддрд┐

рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛:

  • рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╢реВрдиреНрдп-рд╡рд┐рдиреНрдпрд╛рд╕
  • рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ https://github.com/mui-org/material-ui/issues/8503
  • рд╕реНрд░реЛрдд рдХрд╛ рдирдХреНрд╢рд╛

рд╣рдорд╛рд░реЗ рд╡рд┐рдХрд▓реНрдк рдХреНрдпрд╛ рд╣реИрдВ?

  • рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ
  • рднрд╛рд╡рдирд╛
  • JSS (рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдореЗрдВ рд▓рд┐рдкрдЯреЗ рд╣реБрдП)
  • styletron
  • Aphrodite
  • Fela
  • рдЕрдиреНрдп?

рддреБрд▓рдирд╛

рдкреНрд░рджрд░реНрд╢рди

рдпрд╣рд╛рдВ рдХрдИ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд╣реИрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рд╡реА 4 рдХреЗрд╡рд▓ рд╕реНрдерд┐рд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рд╣реИ ):

рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░: https://github.com/mnajdova/react-native-web/pull/1

рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: рдЬреЗрдПрд╕рдПрд╕ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ @ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ / рд╢реИрд▓рд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдкрдЯреЗ), рд╕реНрдЯрд╛рдЗрд▓рд▓реЗрдЯ, рдФрд░ рдлреЗрд▓рд╛ред рдпрд╣ рд╣рдореЗрдВ рдЫреЛрдбрд╝ рджреЗрдЧрд╛:

  • рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ
  • рднрд╛рд╡рдирд╛
  • Aphrodite
  • рдЬреЗрдПрд╕рдПрд╕
  • рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-styletron
  • Fela

рдЧрддрд┐рд╢реАрд▓ рд╕рд╣рд╛рд░рд╛

рдЦреБрд▓реЗ рдореБрджреНрджреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Aphrodite рдЧрддрд┐рд╢реАрд▓ рд╕рд╣рд╛рд░рд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ: https://github.com/Khan/aphrodite/issues/141
рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ рдЗрд╕рдХрд╛ рдЕрд░реНрде рдпрд╣ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЕрдкрдиреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рднреА рдЫреЛрдбрд╝ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП:

  • рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ
  • рднрд╛рд╡рдирд╛
  • Aphrodite
  • рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-styletron

NPM

рдЬрдмрдХрд┐ styled-components рдФрд░ emotion рджреЛрдиреЛрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИрдВ, react-styletron рдЙрд╕ рд╕рдордп рдпрд╛ рд▓реЗрдЦрди рдкреНрд░рддрд┐ рд╕рдкреНрддрд╛рд╣ рд▓рдЧрднрдЧ 12500 рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдкреАрдЫреЗ рд╣реИ (рдпрд╣ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдПрдХ рдордЬрдмреВрдд рдХрд╛рд░рдг рд╣реИ рд╣рдореЗрдВ рдЗрд╕реЗ рдХреНрдпреЛрдВ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЗрд╕рдХреЗ рд╕рд╛рде рдЬрд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рд╕рдореБрджрд╛рдп рдХреЛ рдлрд┐рд░ рд╕реЗ рдЕрдкрдиреЗ рдРрдкреНрд╕ рдореЗрдВ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдЗрдВрдЬрди рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА)ред

рдпрд╣рд╛рдБ рд▓рд┐рд╕реНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдордп рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдбрд╛рдЙрдирд▓реЛрдбреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ:



рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдореЗрдВ рднрд╛рд╡рдирд╛ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред

  • рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ
  • рднрд╛рд╡рдирд╛
  • рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-styletron

рд╕рдорд╡рд░реНрддреА рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ

  • рднрд╛рд╡рдирд╛: рд╣рд╛рдБ ред V10 рдХреЗ рдмрд╛рдж рд╕реЗ рдпрд╣ рдЙрдирдХреЗ рдШреЛрд╖рдгрд╛ рдкреЛрд╕реНрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рдЦреНрдд рдореЛрдб рд╕рдВрдЧрдд рд╣реИред рдореИрдВрдиреЗ рдЗрд╕реЗ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЙрдореНрдореАрдж рдХреЗ рдореБрддрд╛рдмрд┐рдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
  • рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХ: рдЖрдВрд╢рд┐рдХ ред рд╕рдЦреНрдд рдореЛрдб рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмрдЧ рд╣реИред

рдПрд╕рдПрд╕рдЖрд░

рд╕рд┐рддрд╛рд░реЗ

  • рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХ: 30.6k
  • рднрд╛рд╡рдирд╛: 11.4k
  • JSS : 5.9k

рдкреНрд░рд▓реЗрдЦрди рдкрд░ рдЯреНрд░реИрдлрд╝рд┐рдХ

рдЗрд╕реА рддрд░рд╣ рдХреЗ рдЕрдиреБрдорд╛рдирд┐рдд рд╕рддреНрд░ / рдорд╣реАрдиреЗ:

  • sass-lang.com : ~ 476K / рдорд╣реАрдирд╛ (рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП)
  • рд╕реНрдЯрд╛рдЗрд▓-рд╕реИрдВрдкрд░реНрд╕.рдХреЙрдо: ~ 239K / рдорд╣реАрдирд╛
  • рднрд╛рд╡рдирд╛.рд╢: ~ 59K / рдорд╣реАрдирд╛
  • cssinjs.org : <30k / month (рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП)

рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛

рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░, 53.8% рдкреНрд░рддрд┐рд╢рдд рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рд╢реИрд▓рд┐рдпреЛрдВ (рдЬреЗрдПрд╕рдПрд╕) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рдЗрдВрдЬрди рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ 20.4% рдкреНрд░рддрд┐рд╢рдд рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпрдХреНрд╖ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рдЧрднрдЧ 1.9% рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрди рдирдВрдмрд░реЛрдВ рдХреЗ рдмрд╛рдж рд╣рдо рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдзрдХреНрдХрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХрд╛ рд╕рдорд░реНрдерди

  • рднрд╛рд╡рдирд╛: рдЖрдзреБрдирд┐рдХ рд╕рджрд╛рдмрд╣рд╛рд░ рдмреНрд░рд╛рдЙрдЬрд╝рд░ + IE11
  • рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХ: v5 рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд┐рдЫрд▓реЗ рд╕рдВрд╕реНрдХрд░рдг рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ

рдмрдВрдбрд▓ рдЖрдХрд╛рд░

  • рднрд╛рд╡рдирд╛: 11.2kB
  • рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХ: 12.5kB

рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдХреНрдпрд╛ рд╣реИ?

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдЗрдВрдЬрди

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рд╣рдо рдХрдИ рдЗрдВрдЬрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддрдм рднреА рд╣рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рдХреА рд╡рдХрд╛рд▓рдд рдХрд░рдиреЗ рдФрд░ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреЛ рдбреЗрдореЛ рдореЗрдВ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ

рдкреЗрд╢реЗрд╡рд░реЛрдВ:

  • рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рд╕рдореБрджрд╛рдп рд╣реИ, рд▓реЛрдЧ рдЗрд╕рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВред
  • V5 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рдкреНрд░рджрд░реНрд╢рди рдЕрдЪреНрдЫрд╛ рд╣реИред

рд╡рд┐рдкрдХреНрд╖:

  • рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рд╕рднреА рдШрдЯрдХреЛрдВ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ styled API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рдкрд╛рд╕ рд╣рдореЗрд╢рд╛ рдЖрд╡рд░рдг рдШрдЯрдХ рд╣реЛрдВрдЧреЗ рдпрджрд┐ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рд╢реИрд▓реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
  • рдкреВрд░реНрдг рд╕рдорд╡рд░реНрддреА рд╕рдорд░реНрдерди рдХрд╛ рдЕрднрд╛рд╡, рдЬреЛ рд╕рдбрд╝рдХ рдХреЗ рдиреАрдЪреЗ рдЕрд╡рд░реЛрдзрдХ рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред

рднрд╛рд╡рдирд╛

рдкреЗрд╢реЗрд╡рд░реЛрдВ:

  • рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдмрдбрд╝реЗ рд╕рдореБрджрд╛рдп, рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВред
  • рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рдиред
  • рд╕рдорд╡рд░реНрддреА рдореЛрдб + SSR рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛ред
  • рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЛрдк рдУрд╡рд░рд░рд╛рдЗрдбреНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
  • рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░ рд╕рдорд░реНрдерди
  • рдереЛрдбрд╝рд╛ рдЫреЛрдЯрд╛ред

рд╡рд┐рдкрдХреНрд╖:

рд╕рдорд░реНрдерди рдХрдИ

рд╣рдо рдХрдИ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдШрд░ рдХреЗ рдПрдбреЗрдкреНрдЯрд░ рдкреНрд░рджрд╛рди рдХрд░рдХреЗред рдХреБрдЫ рдЪреАрдЬреЗрдВ рдЬрд┐рди рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рд╢реИрд▓рд┐рдпреЛрдВ рдкрд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЙрдирдХреЗ рдмреАрдЪ рдЕрд▓рдЧ рд╣реИ (рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ / рднрд╛рд╡рдирд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдЬреЗрдПрд╕)ред рд╣рдо рд╡рд┐рд╖рдп рд╡рд╕реНрддреБ рдХрд╛ рдлрд┐рд░ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ рдЪрд╛рд╣реЗ рд╣рдо рдХреЛрдИ рднреА рдЙрдкрд╛рдп рдХрд░реЗрдВред

рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрдо рд╢рд╛рдорд┐рд▓ рд╕рдорд░реНрдерди styled рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ - (рдпрд╣ рд╕рд┐рд░реНрдл рдХреБрдЫ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реИ)ред

рдЕрддрд┐рд░рд┐рдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ

рдШрдЯрдХреЛрдВ рдкрд░ рдирд┐рдпрддрд╛рддреНрдордХ рд╡рд░реНрдЧрдирд╛рдо рдЬрд┐рдиреНрд╣реЗрдВ рдХрд╕реНрдЯрдо рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐ рдХрдХреНрд╖рд╛рдПрдВ рдХреИрд╕реЗ рджрд┐рдЦрддреА рд╣реИрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд▓рдХреНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдирдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рд╕реНрд▓рд╛рдЗрдбрд░ рдШрдЯрдХ рд▓реЗ рдЬрд╛рдКрдВрдЧрд╛ред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдЙрддреНрдкрдиреНрди рдбреЛрдо рджрд┐рдЦрдиреЗ рдореЗрдВ рдХреИрд╕рд╛ рд╣реИ:

рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрдирд╛рддреНрдордХ рд╢рдмреНрджрд╛рд░реНрде рд╣реИ рдФрд░ рд▓реЛрдЧ рдШрдЯрдХ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рджреВрд╕рд░реА рдУрд░, рднрд╛рд╡рдирд╛рдПрдВ, рд╕реНрдЯрд╛рдЗрд▓-рдХрд▓рдкреБрд░реНрдЬреЗ рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╕рдорд╛рди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреНрд▓рд╛рд╕ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдХреБрдЫ рд╣реИрд╢ рдмрдирд╛рдПрдЧреАред рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдЙрди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рднрд╛рд╡рдирд╛рдУрдВ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╡рд░реНрдЧреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдореЗрдВ рдЕрднреА рднреА рд╡реЗ рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрдВрдЧреА рдЬреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рдереАрдВ, рдЬреИрд╕реЗ MuiSlider-root рдФрд░ MuiSlider-colorPrimary , рдХреЗрд╡рд▓ рдЕрдВрддрд░ рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдХрдХреНрд╖рд╛рдПрдВ рдЕрдм рд╣реЛрдВрдЧреА рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╣реБрдХ рдХреА рддрд░рд╣ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ - useSliderClasses

рдирд┐рд╖реНрдХрд░реНрд╖

рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рд╣рдо рдХрд┐рд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВрдЧреЗ, рд╣рдо styled API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдХрд┐ рдЙрди рджреЛрдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред рдпрд╣ рд╣рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ + рдЕрд╕рдВрддреБрд╖реНрдЯ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рди рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ (рд╢рд╛рдпрдж рд╡реЗрдмрдкреИрдХ рдЙрдкрдирд╛рдо рдХреЗ рд╕рд╛рде, рдЬреИрд╕реЗ рдХрд┐ рдкреНрд░рдЪрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред

рдЕрдВрдд рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореМрдЬреВрдж рджреЛ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдкрдбрд╝рддрд╛рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдХреЛрд░ рдЯреАрдо рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ рдХрд┐ рд╣рдо рднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдЬрд╛рдПрдВ ред рдХреБрдЫ рдкреНрд░рдореБрдЦ рддрддреНрд╡:

рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдФрд░ рднрд╛рд╡рдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рдПрдХ рдЫреЛрдЯрд╛ рдкреНрд░рд╡рд╛рд╕ рд▓рд╛рдЧрдд

рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдкреНрд░рдпрд╛рд╕ рдХреЗ рд╕рд╛рде рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЖрд╡рд░рдг рдШрдЯрдХреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реИрдВ

рднрд╛рд╡рдирд╛ рд╕реЗ cx + css рдХрд╛ рд╕рдорд░реНрдерди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдлрд╛рдпрджреЗрдордВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдЧрд░ рд╡реЗ рд░реИрдкрд░ рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдЯрд╛рдЗрд▓ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рд╕рдорд╡рд░реНрддреА рдореЛрдб рд╕рдорд░реНрдерд┐рдд рд╕рдорд░реНрдерд┐рдд рд╣реИ: +1:

рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЧрд╣рди рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдбреЛрд╕ рд╕реЗ @ryancogswell ред рдЕрднреА рддрдХ рд╣рдореЗрдВ @emotion рдХреЗ рдХреЛрдб рдореЗрдВ
рд╣рдо рднрд╛рд╡рдирд╛ рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдШрдЯрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рд╕реЗ createGlobalStyle рднреА рджреЗрдЦ рд░рд╣реЗ рдереЗред рдпрд╣ рд░реЗрдВрдбрд░ (рд╕реНрдЯреНрд░рд┐рдХреНрдЯ / рдХрдВрд╕рд░реНрдЯ рдореЛрдб рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд) рдФрд░ рдЕрдкрдиреЗ рдХреНрд▓реАрдирдЕрдк рдлрдВрдХреНрд╢рди рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЕрдкрдиреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред createGlobalStyle рдХреЛ рд╕рдорд╡рд░реНрддреА рдореЛрдб рдореЗрдВ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рдкреВрд░реНрдг рдкреБрдирд░реНрд▓реЗрдЦрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдпрд╣ рд░реЗрдВрдбрд░ рдХреЗ рджреМрд░рд╛рди рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдареАрдХ рдирд╣реАрдВ рд╣реИ рдпрджрд┐ рд╡рд╣ рд░реЗрдВрдбрд░ рдХрднреА рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдиреЗ рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕ рдкреНрд░рдЧрддрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ

рдЗрдореЛрд╢рди рдХреЗ рдбреЙрдХреНрд╕ рдХрдИ рдХреНрд▓рд╛рд╕ рдХреЗ рдирд╛рдореЛрдВ рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд╣реА рд╡рд░реНрдЧ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреА рд░рдЪрдирд╛ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВред V5 рдореЗрдВ, рд╣рдорд╛рд░реЗ рдореМрдЬреВрджрд╛ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╢реИрд▓реА рдХреЗ рдЙрдирдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рднрд╛рд╡рдирд╛-рд╢реИрд▓реА рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╣реА рд╡рд░реНрдЧ рдореЗрдВ рдЬреЛрдбрд╝рддреА рд╣реИред рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЗрди рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдСрд░реНрдбрд░ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рджрд┐рд▓рд╛рддрд╛ рд╣реИ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдЖрдВрддрд░рд┐рдХ, рдХреНрдпреЛрдВрдХрд┐ рд╣рд░ рдШрдЯрдХ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рдПрдХрд▓ рд╡рд░реНрдЧ рдирд╛рдо: +1 рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо (рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдФрд░ рдлрд┐рд░ рдкреНрд░рддрд┐ рддрддреНрд╡ рдПрдХ рдПрдХрд▓ (рднрд╛рд╡рдирд╛ рджреНрд╡рд╛рд░рд╛) рд╡рд░реНрдЧ рдирд╛рдо рдЙрддреНрдкрдиреНрди рд╣реЛрдЧрд╛ рдЬреЛ рдЗрд╕рдореЗрдВ рдмрд╣рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рд╕рдореЗрдХрд┐рдд рдХрд░реЗрдЧрд╛ред
рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рддрдм рд░рдЪрдирд╛ рдХреЗ рдХреНрд░рдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рднрд╛рд╡рдирд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред
рднрд╛рд╡рдирд╛ (рд╕рднреА рд░реЗрдВрдбрд░-рдЯрд╛рдЗрдо рдпрд╛ рдбреЗрдлрд┐рдирд┐рд╢рди-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬрд┐рд╢рди) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рд░рдЪрдирд╛рдПрдВ рддрддреНрд╡ рдкрд░ рдПрдХрд▓ рд╡рд░реНрдЧ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХрд░рддреА рд╣реИрдВред
рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдЗрд╕ рддрд░рд╣ рд░реЗрдВрдбрд░-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬреАрд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ (рдбреЗрдлрд┐рдирд┐рд╢рди-рдЯрд╛рдЗрдо рдХрдореНрдкреЛрдЬреАрд╢рди рд╕рд┐рдВрдЧрд▓ рдХреНрд▓рд╛рд╕ рдореЗрдВ рд╕рдВрдпреБрдХреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ)ред рдПрдХ рд╣реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрдИ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рд╕рдорд╛рди рд╕рдВрд░рдЪрдирд╛ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд░рд╛рджрд╛ рдХрд┐рдпрд╛ рдерд╛ред

рд╡реИрдХрд▓реНрдкрд┐рдХ


рдЖрдкрдиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╕реЛрдЪрд╛?

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рднрд╛рд╡рдирд╛ рдХреЗ рдЕрдиреБрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдмреЛрд▓рддреЗ рд╣реБрдП - рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ

рд╣рдореЗрдВ рдЬрд▓реНрдж рд╣реА рдПрдХ рдирдпрд╛ рдкреНрд░рдореБрдЦ-рдИрд╢ рдЬрд╛рд░реА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ рдХреНрд░рд╛рдВрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреА, рдмрд╕ рдХреБрдЫ рдХреНрд▓реАрдирдЕрдк, рд╕рдордЧреНрд░ рд╕реБрдзрд╛рд░, рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рд╣реБрдХ рдФрд░ рдЯреАрдПрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реБрдзрд╛рд░ (рдмреЗрд╣рддрд░ рдЕрдиреБрдорд╛рди рдФрд░ рдкреНрд░рджрд░реНрд╢рди)ред

рдУрд╣, рдФрд░ рд▓рд┐рдЦрд┐рдд рдкрд╛рд░реНрд╕рд░! рднрд╛рд╡рдирд╛ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдореЗрдВ рдХреБрдЫ рдПрдЬ рдмрдЧреНрд╕ рдХреЛ рдЦрддреНрдо рдХрд░рддрд╛ рд╣реИ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╡реЗ рджреЛрдиреЛрдВ рдПрдХ рд╣реА рдкрд╛рд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рдпрд╣ рдЫреЛрдЯрд╛ рдФрд░ рддреЗрдЬ рджреЛрдиреЛрдВ рд╣реИред

рд╕рднреА 105 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдмрд╕ рдХреБрдЫ рд╕реБрдзрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП:

рд░рд┐рдПрдХреНрдЯ рд╕рдореБрджрд╛рдп, рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░, рдЬреЗрдПрд╕рдПрд╕ рдХреЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдорддрджрд╛рди рдХрд┐рдпрд╛ рд╣реИред

рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рд╕рдореБрджрд╛рдп рдиреЗ _for_ JSS рдХреЛ рд╡реЛрдЯ рдирд╣реАрдВ рджрд┐рдпрд╛ред рд╢рд╛рдпрдж рдпрд╣ "рд╡рд┐рдкрдгрди" рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдерд╛?

рд╣рдордиреЗ рд╕рд╣реА рдШреЛрдбрд╝реЗ рдкрд░ рджрд╛рдВрд╡ рдирд╣реАрдВ рд▓рдЧрд╛рдпрд╛ред

рд╣рдордиреЗ рдПрдХрдорд╛рддреНрд░ рдШреЛрдбрд╝реЗ рдкрд░ рд╢рд░реНрдд рд▓рдЧрд╛рдИ - рдпрд╣ рдПрдХ рдШреЛрдбрд╝реЗ рдХреА рджреМрдбрд╝ рдереАред рд╕рдордп рдкрд░ рдЙрдкрд▓рдмреНрдз рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╕рднреА рдмрдХреНрд╕реЗ рдХреЛ рдЯрд┐рдХ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рднрд╛рд╡рдирд╛ рдХреЛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ! рдореБрдЭреЗ TS рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдкрд╕рдВрдж рд╣реИ, рдЬреИрд╕реЗ, рд╕реНрд╡рдд: рдкреВрд░реНрдг рдФрд░ рдЯрд╛рдЗрдкрд┐рдВрдЧ рдХреЗ рд╕рднреА рд▓рд╛рдн - рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдХреЗ рд╕рд╛рде - рдЬрдм рдпреВрдЖрдИ рдпрд╛ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдШрдЯрдХреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рд╕рдВрднрд╡ рд╣реЛрдЧрд╛?

рдЕрдВрддрд┐рдо рдмрд┐рдЯ рдореБрдЭреЗ рдорд┐рд▓ рдЧрдпрд╛! рдореБрдЭреЗ рдмреАрдЯрд╛ рдлреНрд▓реИрдЧ рдХреЗ рдкреАрдЫреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреА рдпрд╛ рдХреБрдЫ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдкрд░ рд╡рд┐рдХрд╛рд╕ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реЗрдВрдЧреЗ:

рднрд╛рд╡рдирд╛ (рд╕рднреА рд░реЗрдВрдбрд░-рдЯрд╛рдЗрдо рдпрд╛ рдбреЗрдлрд┐рдирд┐рд╢рди-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬрд┐рд╢рди) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рд░рдЪрдирд╛рдПрдВ рддрддреНрд╡ рдкрд░ рдПрдХрд▓ рд╡рд░реНрдЧ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХрд░рддреА рд╣реИрдВред
рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд░реЗрдВрдбрд░-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬреАрд╢рди (рдбреЗрдлрд┐рдирд┐рд╢рди-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬрд┐рд╢рди рдХреЛ рд╕рд┐рдВрдЧрд▓ рдХреНрд▓рд╛рд╕ рдореЗрдВ рдорд┐рд▓рд╛ рджреЗрддреЗ рд╣реИрдВ) рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдЪрд▓рддрд╛ред

рдореИрдВрдиреЗ рдпрд╣ рднреА рдиреЛрдЯ рдХрд┐рдпрд╛ рдХрд┐ рдереАрдо рдСрдмреНрдЬреЗрдХреНрдЯ рд╡рд╣реА рд░рд╣рдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ, - рдореЗрд░реА рд░рд╛рдп рдореЗрдВ - рдХрд┐рд╕реА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдереАрдо рджреЗрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛! рдореЗрд░реЗ рдкрд╛рд╕ рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреБрдЫ рдирд╣реАрдВ рд╣реИ: рдЪрдХрд┐рдд:

рдПрдо-рдпреВрдЖрдИ рдкрд░ рд╢рд╛рдирджрд╛рд░ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореБрдЭреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдЬреЛ рджрд┐рд╢рд╛ рдорд┐рд▓ рд░рд╣реА рд╣реИ, рдЙрд╕рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИред

рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдХреЗ рдЕрдзрд┐рдХ рдорд╛рдирдХреАрдХреГрдд рддрд░реАрдХреЗ рд╕реЗ рдЬрд╛рдирд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЯреАрдо рдФрд░ рд╕рдореБрджрд╛рдп рдХрд┐рдВрдХ рд╕реЗ рдмрд╛рд╣рд░ рдХрд╛рдо рдХрд░реЗрдВрдЧреЗ, рдФрд░ v5 - рдЗрд╕рдХреА рдЖрд╡рд╛рдЬрд╝ рд╕реЗ - рдФрд░ рднреА рднрдпрд╛рдирдХ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ! : рд░реЙрдХреЗрдЯ:

рдЬреИрд╕рд╛ рдХрд┐ рдХрд┐рд╕реА рдиреЗ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдФрд░ рднрд╛рд╡рдирд╛ рджреЛрдиреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ, рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдЙрдирдХреЗ рдмреАрдЪ рд╕рдВрдХреНрд░рдордг рдЖрд╕рд╛рди рдФрд░ рджрд░реНрдж рд░рд╣рд┐рдд рд╣реИред

+ рднрд╛рд╡рдирд╛ рдЕрдзрд┐рдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЕрдиреБрдХреВрд▓ рд╣реИ

рднрд╛рд╡рдирд╛ рдХреЗ рдЕрдиреБрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдмреЛрд▓рддреЗ рд╣реБрдП - рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ

рд╣рдореЗрдВ рдЬрд▓реНрдж рд╣реА рдПрдХ рдирдпрд╛ рдкреНрд░рдореБрдЦ-рдИрд╢ рдЬрд╛рд░реА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ рдХреНрд░рд╛рдВрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреА, рдмрд╕ рдХреБрдЫ рдХреНрд▓реАрдирдЕрдк, рд╕рдордЧреНрд░ рд╕реБрдзрд╛рд░, рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рд╣реБрдХ рдФрд░ рдЯреАрдПрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реБрдзрд╛рд░ (рдмреЗрд╣рддрд░ рдЕрдиреБрдорд╛рди рдФрд░ рдкреНрд░рджрд░реНрд╢рди)ред

рдУрд╣, рдФрд░ рд▓рд┐рдЦрд┐рдд рдкрд╛рд░реНрд╕рд░! рднрд╛рд╡рдирд╛ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдореЗрдВ рдХреБрдЫ рдПрдЬ рдмрдЧреНрд╕ рдХреЛ рдЦрддреНрдо рдХрд░рддрд╛ рд╣реИ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╡реЗ рджреЛрдиреЛрдВ рдПрдХ рд╣реА рдкрд╛рд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рдпрд╣ рдЫреЛрдЯрд╛ рдФрд░ рддреЗрдЬ рджреЛрдиреЛрдВ рд╣реИред

рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛, рдХреМрди рд╕рд╛ рд╡рд┐рдХрд▓реНрдк рдЕрдзрд┐рдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ (рдпрджрд┐ рдХреЛрдИ рд╣реЛ) рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛ рд╣реИ?

рдпрдХреАрди рдирд╣реАрдВ рд╣реЛрддрд╛ рдЕрдЧрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдкрдбрд╝рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рднрд╛рд╡рдирд╛рдУрдВ рдФрд░ / рдпрд╛ рд╢реИрд▓реА-рдШрдЯрдХ рдХреЗ рдмреИрдмрд▓ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛? рд╡реЗ рдЪреАрдЬреЛрдВ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ рдореЗрд░реА рд╕рдордЭ рдереА рдХрд┐ MUI рдиреЗ рдкрд╣рд▓реЗ рд╕рдВрдХреЗрдд рджрд┐рдпрд╛ рдерд╛ рдХрд┐ рдпрд╣ рд╕реНрдЯрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рднрд╛рд╡рдирд╛ рдПрдХ рдорд╣рд╛рди рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЕрдзрд┐рдХ рд▓реЛрдЧреЛрдВ рдХреЗ рд╕рд╛рде, рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдЕрдЪреНрдЫреЗ рд╡рд┐рдХрд▓реНрдк рджреЗрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдЦреЛрдЬреЗрдВ рдпрджрд┐ рд╡реЗ рднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП рдкрд▓рд╛рдпрди рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ

@ ee0pdt рдЗрдореЛрд╢рди рдмрд╣реБрдд рд╣реИ, рд╕реНрдЯрд╛рдЗрд▓ рдмрд╣реБрдд рдкрд╕рдВрдж рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдХреЛ рд▓реЗрдХрд░ рдЗрдореЛрд╢рди рдХреЗ рд▓рд┐рдП рдпрд╣ рдкреВрд░реА рдкрд╕рдВрдж рд╣реИред рд╕реНрдкрд╖реНрдЯ рд▓рд╛рдн рд╣реИрдВ, рдФрд░ рдкреНрд░рд╡рд╛рд╕рди рдЛрдг рдмрд╣реБрдд рдХрдо рд╣реИред

рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╡рд┐рдХрд▓реНрдк рджреЗрдХрд░ рджреЛрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдкреВрд░рд╛ рдЦрдВрдб рд╣реИред рдпрд╣ рдЬрд╛рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░, рдорд╛рдирдХреАрдХрд░рдг рд╢рд╛рдпрдж рд╣рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдФрд░ рдЕрдзрд┐рдХ рдорджрдж рдХрд░реЗрдЧрд╛ред рдкреВрд░реНрдг рд╕рдВрдХреНрд╖рд┐рдкреНрддрддрд╛ рдФрд░ рдХреЛрдИ рдЖрд╡рд░рдг рдШрдЯрдХ рдореЗрд░реЗ рд▓рд┐рдП рдПрдХ рдбреАрд▓-рдмреНрд░реЗрдХрд░ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рджреВрд╕рд░реЛрдВ рдХреЛ рдХреБрдЫ рд╕реНрдЯрд╛рдЗрд▓ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЪрд╛рд╣рддреЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЙрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдореИрдВ рдмрд▓реНрдХрд┐ рдорд╛рдирдХреАрдХрд░рдг рдХреА рдУрд░ рдзрдХреЗрд▓реВрдБрдЧрд╛

рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди-рд░рд┐рдПрдХреНрд╢рди рд╕реЗ рдЗрдВрдХрд╛рд░ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛? рдпрд╣ рдПрдХ рд╕рдВрдкреВрд░реНрдг рдореАрдЯреНрд░рд┐рдХ рдЫреЛрдбрд╝рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдорд╛рдирд╛ рдирд╣реАрдВ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдХрд┐ рдореЗрдореЛрд░реА рдЦрдкрдд рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди рдЗрдВрдЬрди (рдФрд░ рдлреЗрд▓рд╛) рдкрд░рдорд╛рдгреБ рд╣реИред рдЬрдмрдХрд┐ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реА рдореЗрдореЛрд░реА рдХреЛ рдмрдЪрд╛рддрд╛ рд╣реИред рдмрд╣реБрдд рд╕рд╛рд░реЗ рд░рд┐рдПрдХреНрд╢рди рдкреЗрдЬ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рдмрд╛рдж> 1GB рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЬрдорд╛ рджреЗрддрд╛ рд╣реИред

рдПрдХ рдкрд░рдорд╛рдгреБ рдврд╛рдВрдЪреЗ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрддрд░ рдкрд░ рд╕рдордп рдХреЗ рд╕рд╛рде рдШрдЯрдХреЛрдВ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рдорд╛рдгреБ "рд╡рд░реНрдЧ" рдХреЛ рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╢рд╛рдпрдж рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рднреА рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реБрдЖред

рдЬрдм рддрдХ рдпрд╣ SSR рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рддрдм рддрдХ рдЦреБрд╢ рд░рд╣рддрд╛ рд╣реИ

рдореИрдВрдиреЗ рдореВрд▓ рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ рдХреЗ рдореБрджреНрджреЗ рд╕реЗ рдЕрдкрдирд╛ рд╡реЛрдЯ рд╡рд╛рдкрд╕ рд▓реЗ рд▓рд┐рдпрд╛: рдкрд╕реАрдирд╛_рд╕реНрдорд┐рд▓: - рдкрд╣рд▓реА рдмрд╛рд░ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рдЬрд╛рдирдирд╛ рд╕реАрдЦрд╛, рд▓реЗрдХрд┐рди It will mean that all components styles need to be created using the styled API, which means for developers they will always have wrapper components if they need to re-style. рдореБрдЭреЗ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ред

рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЗ рд▓рд┐рдП рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред рдпрд╣рд╛рдБ рдХреБрдЫ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ / рдкреНрд░рд╢реНрдиреЛрдВ рдХреЗ рдЙрддреНрддрд░ рджрд┐рдП рдЧрдП рд╣реИрдВред

рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛, рдХреМрди рд╕рд╛ рд╡рд┐рдХрд▓реНрдк рдЕрдзрд┐рдХ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ (рдпрджрд┐ рдХреЛрдИ рд╣реЛ) рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛ рд╣реИ?

@ sag1v styled-components vs emotion рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рднреА рдЕрдзрд┐рдХ рдпрд╛ рдХрдо рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рдкреНрд░рд╕реНрддреБрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдореЗрдВ рд╕рдВрднрд╛рд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рд╕рдордЧреНрд░ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрди рдЖрд╕рдкрд╛рд╕ рд╣реЛрдВрдЧреЗ рдХрд┐ рдереАрдо рдХреЗ рдЕрдВрджрд░ рдУрд╡рд░рд░рд╛рдЗрдб рдХреИрд╕реЗ рджрд┐рдЦреЗрдВрдЧреЗ:

// previosly
root: {
  contained: {
    '&$disabled': { // <-- this part will need to be transformed
      color: 'red',
    },
  },
  containedPrimary: {
    color: 'blue',
  },
}

// after
root: {
  contained: {
     '&.Mui-disabled': {
      color: 'red',
    },
  },
}

рд╣рд╛рд▓рд╛рдБрдХрд┐, emotion & styled-components рдмреАрдЪ рдХреА рд╢реИрд▓реА рд╡рд╛рдХреНрдп рд░рдЪрдирд╛ рд╕рдорд╛рди рд╣реИ, рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд╝рд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝реЗрдЧрд╛ред

рдпрдХреАрди рдирд╣реАрдВ рд╣реЛрддрд╛ рдЕрдЧрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдкрдбрд╝рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреНрдпрд╛ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рднрд╛рд╡рдирд╛рдУрдВ рдФрд░ / рдпрд╛ рд╢реИрд▓реА-рдШрдЯрдХ рдХреЗ рдмреИрдмрд▓ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛? рд╡реЗ рдЪреАрдЬреЛрдВ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддреЗ рд╣реИрдВред

@ hc-codersatlas nope, рд▓реЗрдХрд┐рди perfs рд╡реЗ рд╣реИрдВ рдЬреЛ рд╡реИрд╕реЗ рднреА рд╢реАрд░реНрд╖ рдХреБрдЫ рдХреЗ рдмреАрдЪ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдкрдбрд╝реЗрдЧрд╛ред рдЕрдЪреНрдЫреА рдХреЙрд▓ рдХрдард┐рди!

рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди-рд░рд┐рдПрдХреНрд╢рди рд╕реЗ рдЗрдВрдХрд╛рд░ рдХреНрдпреЛрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛? рдпрд╣ рдПрдХ рд╕рдВрдкреВрд░реНрдг рдореАрдЯреНрд░рд┐рдХ рдЫреЛрдбрд╝рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдорд╛рдирд╛ рдирд╣реАрдВ рдЧрдпрд╛ рдерд╛, рдЬреЛ рдХрд┐ рдореЗрдореЛрд░реА рдЦрдкрдд рд╣реИред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди рдЗрдВрдЬрди (рдФрд░ рдлреЗрд▓рд╛) рдкрд░рдорд╛рдгреБ рд╣реИред рдЬрдмрдХрд┐ рдереЛрдбрд╝рд╛ рдзреАрдорд╛ рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реА рдореЗрдореЛрд░реА рдХреЛ рдмрдЪрд╛рддрд╛ рд╣реИред рдмрд╣реБрдд рд╕рд╛рд░реЗ рд░рд┐рдПрдХреНрд╢рди рдкреЗрдЬ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдереЛрдбрд╝реА рджреЗрд░ рдХреЗ рдмрд╛рдж> 1GB рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдЬрдорд╛ рджреЗрддрд╛ рд╣реИред

рдПрдХ рдкрд░рдорд╛рдгреБ рдврд╛рдВрдЪреЗ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрддрд░ рдкрд░ рд╕рдордп рдХреЗ рд╕рд╛рде рдШрдЯрдХреЛрдВ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдкрд░рдорд╛рдгреБ "рд╡рд░реНрдЧ" рдХреЛ рдХреИрд╢ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд╢рд╛рдпрдж рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рднреА рдкрд░рд┐рд▓рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реБрдЖред

рд▓рдЧрднрдЧ styletron-react рдореЗрд░реА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдЗрдВрдХрд╛рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рднреНрд░рд╛рдордХ рдЦреЗрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдкреАрдЖрд░ рд╡рд┐рд╡рд░рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдЧрд╛ред рдкрд░рдлреЗрдХреНрдЯ рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕реНрдЯрд╛рдЗрд▓рдЯрд░реЙрди рдХреЗ рд╕рд╛рде рдореЗрд░реА рд╕рдмрд╕реЗ рдмрдбрд╝реА рдЪрд┐рдВрддрд╛ рд╕рдореБрджрд╛рдп рд╣реИ: https://www.npmtrends.com/styletron-react-vs-@emotion/core-vs- рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯ рдЬрдмрдХрд┐ рднрд╛рд╡рдирд╛ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓-рджреЛрдиреЛрдВ рдШрдЯрдХ рдкрд┐рдЫрд▓реЗ 6 рдорд╣реАрдиреЛрдВ рдореЗрдВ 2000000 рд╕реЗ рдЕрдзрд┐рдХ рдбрд╛рдЙрдирд▓реЛрдб рд╣реБрдП рд╣реИрдВ, рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди рд▓рдЧрднрдЧ 15000 рд╣реИред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд▓рд╛рд╕рдирд╛рдо рдореЗрдВ рдХреЗрд╡рд▓ рдПрдХ рд╕реНрдЯрд╛рдЗрд▓рд░ рдирд┐рдпрдо рд╣реЛрддрд╛ рд╣реИред

рдореБрдЭреЗ рдПрдХ рдкреНрд░рд╢реНрди рдорд┐рд▓рд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╣рдо рднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рд╣рдо рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдиреАрдЪреЗ рдХреЛрдб рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ?
/ ** @ jsx jsx * /
рдпрд╣ JSX pragma рд╣реИ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ JSX pragma React.createElement рд╣реИ

рдпрджрд┐ рдЖрдк css рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдЗрд╕реЗ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред styled API рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ ClassName API рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

JSX pragma рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдЫреЛрдбрд╝рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдмреИрдмрд▓ рд╕реЗрдЯрдЕрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдпрд╣ рдЯреВрд▓рд┐рдВрдЧ рд╕реЗ рднреА рдмрджрддрд░ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, TS рдЖрдкрдХреЗ CSS рдкреНрд░реЛрдк рдХреЛ рдареАрдХ рд╕реЗ рдЬрд╛рдБрдЪрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ JSX pragma рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рд╣реЛрддрд╛ рд╣реИред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдВ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ: https://github.com/emotion-js/emotion/pull/1941/files#diff -9abe25e5d2b00958d4b9849f5f20c139305

@mnajdova рдзрдиреНрдпрд╡рд╛рдж рдореИрдВ рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛ рдХрд┐ рдореЗрдореЛрд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди рдХреЗ рд▓рд┐рдП рд╡рд╛рдЙрдЪрд┐рдВрдЧ рд╕реЗ рдЕрдзрд┐рдХ рдХрд╡рд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдбрд╛рдЙрдирд▓реЛрдб рдпрд╛ рд╕рдореБрджрд╛рдп рдХреЗ рд░реВрдк рдореЗрдВ - "рдХреЗрд╡рд▓" Uber рд╕реНрдЯрд╛рдЗрд▓рдЯреНрд░реЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ :) рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдЪрд┐рдВрддрд╛ рдирд╣реАрдВ рд╣реИред рдкрд╣рд▓реА рдмрд╛рд░ рдореЗрдВ рднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП рд╡реЛрдЯ рджрд┐рдпрд╛ред

рдЕрдЧрд░ рд╡рд╣рд╛рдБ рдПрдХ рдХреЛрд▓рд╛рд╣рд▓ рдкреНрд▓рдЧрдЗрди рдпрд╛ рд╕рдорд╛рди рд╣реИ рдХрд┐ рд╕реНрдерд┐рд░ рд╢реИрд▓рд┐рдпреЛрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рдмрджрд▓ рд╕рдХрддрд╛ рд╣реИ рд╢рд╛рдВрдд рдерд╛ред рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдорд╛рди рд▓рд╛рдЗрдмреНрд░реЗрд░реА compiled ред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╢реИрд▓рд┐рдпрд╛рдБ рд╕реНрдерд┐рд░ рд╣реИрдВред

рдЙрдкрдпреЛрдЧреА рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдлреЗрд▓рд╛ рдХреЛ fela-plugin-rtl , fela-plugin-prefixer рдЬреИрд╕реЗ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдФрд░ рднреА рдмрджрддрд░ рдмрдирд╛ рджреЗрдЧрд╛ (https://github.com/microsoft/fluentui/pull/12289) will рдФрд░ рдлрд┐рд░ рдЖрдк рд╢рд╛рдпрдж рднрд╛рд╡рдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ (https://github.com/microsoft/fluentui/pull/13547) рдХрднреА-рдХрднреА рдпрд╣ рдлреЗрд▓рд╛ F рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рджреЛ рдЧреБрдирд╛ рддреЗрдЬ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ

рдореЗрд░реА рдПрдХрдорд╛рддреНрд░ рдЪрд┐рдВрддрд╛ рднрд╛рд╡рдирд╛ рд╕реЗ css рдЪреАрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╣реИред рдпрд╣ рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдмрдбрд╝рд╛ рд▓рд╛рд▓-рдЭрдВрдбрд╛ рд╣реИред рдореБрдЭреЗ рдПрдХ рдмрдбрд╝реЗ рдХреЛрдбрдмреЗрд╕ рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреА рдЪреАрдЬрд╝ рдХреЛ рд╣рдЯрд╛рдирд╛ рдкрдбрд╝рд╛ рдФрд░ рдордЬрд╝рд╛ рдирд╣реАрдВ рдЖрдпрд╛ред рдХреНрдпреЛрдВ? рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдПрдХ рдЕрдореВрд░реНрддрддрд╛ рд╣реИ рдЬреЛ рд▓рдВрдмреЗ рд╕рдордп рдореЗрдВ рд╣рд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рдорд╕реНрдпрд╛рдПрдВ рд▓рд╛рддрд╛ рд╣реИред

рдЬреНрдпрд╛рджрд╛рддрд░ рд╕рдордп, рд╣рдо styled рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдХреБрдЫ рд╡рд░реНрдЧреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП makeStyles рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдХрд╛рдлреА рдЦреБрд╢ рд╣реИрдВред

рдЙрдореНрдореАрдж рд╣реИ, рдЙрди рджреЛ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдкрд░рд┐рд╡рд░реНрддрди рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ, рдФрд░ рдореИрдВ css рдореИрдХреНрд░реЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рд╣реВрдВред

рдореЗрд░реА рдПрдХрдорд╛рддреНрд░ рдЪрд┐рдВрддрд╛ рднрд╛рд╡рдирд╛ рд╕реЗ рд╕реАрдПрд╕рдПрд╕ рдЪреАрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╣реИред

@yordis рдЖрдк рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ css рдкреНрд░реЛрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ makeStyles рдФрд░ withStyles рдХреЗ usages рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдЧрд╛ред рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЖрд╡рд╢реНрдпрдХ рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдорд╛рддреНрд░рд╛ рдЬреНрдпрд╛рджрд╛рддрд░ рдЖрдпрд╛рдд рдкрд░ рдПрдХ рдХреЛрдбрдореЛрдб рддрдХ рд╕реАрдорд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ makeStyles рдпрд╛ withStyles рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдиреЗ рд╡рд╛рд▓рд╛ рддрд░реАрдХрд╛ рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЙрди рдПрдкреАрдЖрдИ рдХреЗ рдХрд┐рд╕реА рднреА рдЪрд▓ рд░рд╣реЗ рд╕рдорд░реНрдерди рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкреИрдХреЗрдЬ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░реВрдВрдЧрд╛ (рддрд╛рдХрд┐ " @ рд╕рд╛рдордЧреНрд░реА-ui / рдХреЛрд░ "рдЕрдм рдПрдХ рдЬреЗрдПрд╕рдПрд╕ рдирд┐рд░реНрднрд░рддрд╛) рдЬреЛ рд╢рд╛рдпрдж рдХреЗрд╡рд▓ рдиреНрдпреВрдирддрдо рд░рдЦрд░рдЦрд╛рд╡ рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ рдХреЗ рдмрд╛рдж v5 рдХреНрдпрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрддрд╛ рдЪрд╛рд░реЛрдВ рдУрд░ рдЬрд╛рд░реА рдХреА рд╣реИ (рд╡рд┐рд╡рд░рдг рдХреЗ makeStyles рдФрд░ withStyles рдиреАрдЪреЗ рдХрд┐рд╕реА рди рдХрд┐рд╕реА рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЕрднреА рддрдХ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╕рд┐рд░реНрдл рднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреЗ рдирд┐рд╣рд┐рддрд╛рд░реНрде рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реА рдЕрдЯрдХрд▓реЗрдВ рд╣реИрдВ)ред

ред рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдкред styled API styled-components рд╕реЗ рдмрдЪрдиреЗ рдХрд╛ рдПрдХ рдХрд╛рд░рдг рдореЗрд░реА рдЯреАрдо рдиреЗ рдЗрдореЛрд╢рди рдХреЛ рдЪреБрдирд╛ рд╣реИ (рдЬреЛ css рдкреНрд░реЛрдк рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╕рдорд╛рди styled API рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ)ред рд╣рдо рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдордЯреЗрд░рд┐рдпрд▓ рдпреВрдЖрдИ рд╕реНрдЯрд╛рдЗрд▓ рдХрд╕реНрдЯрдорд╛рдЗрдЬреЗрд╢рди рдХреЗ рд▓рд┐рдП рдЗрдореЛрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рд╕рдорд░реНрдерди рдореЗрдВ рдирд┐рд░реНрдорд┐рдд рд╕рд┐рд░реНрдл рдХреЗрдХ рдкрд░ рдЯреБрдХрдбрд╝реЗ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЗрди рддрдереНрдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ:

рдХрдИ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рдЕрдВрдд-рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдкрдиреЗ рдмрдВрдбрд▓ рдореЗрдВ рджреЛ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЦреБрдж рдХреЛ рдкрд╛рддреЗ рд╣реИрдВ

рд╕рдорд╡рд░реНрддреА рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдВ
рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХ: рдЖрдВрд╢рд┐рдХ

рдпрджрд┐ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЛ рд╕рдорд╡рд░реНрддреА рдореЛрдб рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдерд╛, рддреЛ рдХреНрдпрд╛ рдпрд╣ рдЕрдзрд┐рдХ рд╕рдордЭрджрд╛рд░ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ (JSS рдХреЛ рдЫреЛрдбрд╝рдХрд░) рдХреЗ рд╕рд╛рде MUI рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдмрдВрдбрд▓ рд╕рд╛рдЗрдЬ рдореЗрдВ рдЫреЛрдЯрд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдореВрдЯ рд╣реИ рдЕрдЧрд░ 2 рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗ рдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордпреВрдЖрдИ рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЬрд╣рд╛рдБ рдореИрдВ рдФрд░ рдореЗрд░реА рдЯреАрдо рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдШрдЯрдХреЛрдВ рдХреЗ рдореБрдЦреНрдп рддрд░реАрдХреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддреЗ рд╣реИрдВ, рдореИрдВ рднрд╛рд╡рдирд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдореЗрдВ рдореМрдЬреВрдж рдХреБрдЫ рдЕрдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рдЖрдпрд╛ред рдФрд░ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЖрдк рд▓реЛрдЧ рдЗрди рдЕрдХреНрд╖рдорддрд╛рдУрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ, рдиреАрдЪреЗ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдиреАрдЪреЗ рднрд╛рд╡рдирд╛ рд╕реНрдЯрд╛рдЗрд▓рд▓реНрдбрдХрдореНрдкреЛрдиреЗрдВрдЯ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ;

const StyledComponent = styled.div`
  ${({color}) => color && `color: ${color}`};
  display: flex;
  justify-content: center;
  align-items: center;
  background: teal;
  font-size: 20px;
  padding-top: 8px;
  padding-bottom: 8px;
  margin-top: 12px;
  margin-bottom: 12px;
  border: 1px solid grey;
`

рдЬрдм рд░рдВрдЧ рдкреНрд░реЛрдк рдмрджрд▓рддрд╛ рд╣реИ рдирдпрд╛ css рдХреНрд▓рд╛рд╕ рд╕рднреА css рдкреНрд░реЙрдкреНрд╕ ( display: flex, justify-content, ..., border: 1px soild grey ) рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рддреНрдпреЗрдХ рдХрд▓рд░ рдкреНрд░реЛрдк рдХреЗ рд▓рд┐рдП рдареАрдХ рдЙрд╕реА рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрдВрдЧреА, рдиреАрдЪреЗ рджреЗрдЦреЗрдВ;
image

рдПрдХ рдФрд░ рдЕрдХреНрд╖рдорддрд╛ рд╣рдореЗрдВ рдорд┐рд▓реА рд╣реИ, рдЬрдм рдПрдХ рдирдпрд╛ рдШрдЯрдХ StyledComponent рд╕реЗ рдКрдкрд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдЖрдзрд╛рд░ рд╕реА StyledComponent рд╕реЗ рдЕрдзрд┐рдХ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╡рд░реНрдЧ рдмрдирд╛рдПрдЧрд╛ред рдиреАрдЪреЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ;

const DerivedComponent = styled(StyledComponent)`
  font-family: monospace;
`

рдпрд╣ рдПрдХ рдФрд░ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдХрд╣рддреЗ рд╣реИрдВ рдмрдирд╛рддрд╛ рд╣реИ font-family: monospace рд╕реЗ рдЙрддреНрдкрдиреНрди рдКрдкрд░ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП StyledComponent ред рдпрд╣реА рд╣реИ, рдпрд╣ рдПрдХ рдРрд╕реА рд╕реАрдПрд╕рдПрд╕ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ StyledComponent рд╕реЗ рдХреЙрдкреА рдХреА рдЧрдИ рд╕рднреА рдкреНрд░реЙрдкреНрд╕ рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ;

image

рдЕрдм рдЕрдЧрд░ StyledComponent рдФрд░ DerivedComponent рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ (рд╢реБрд░реВ рдореЗрдВ) рджреЛ css рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ css рдкреНрд░реЙрдкреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ, (рдХреЗрд╡рд▓ рдлреЙрдиреНрдЯ-рдлреИрдорд┐рд▓реА рдореЗрдВ рднрд┐рдиреНрди)ред рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ;

image

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХрдИ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧреЛрдВ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде, рдЬреИрд╕рд╛ рдХрд┐ рдШрдЯрдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рдХрдИ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдЗрд╕ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд╛ рдРрдк рдкрд░ рдХреЛрдИ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЕрдЧрд░ рдпрд╣ рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирдиреЗ рдкрд░ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВ рд░рди рдЯрд╛рдЗрдо рдореЗрдВ CSSStyle рдмрдирд╛рдиреЗ рдФрд░ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдЗрдореЛрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рд╕рд╡рд╛рд▓ рдирд╣реАрдВ рдЙрдард╛ рд░рд╣рд╛ рд╣реВрдВред рдЗрддреНрд░ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рдореЗрдВ CSSstyles рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдкрд░ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред
рдореИрдВ рдмрд╕ рдЪрд┐рдВрддрд┐рдд рд╣реВрдБ рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕реАрдПрд╕рдПрд╕рд╕реНрдЯрд╛рдЗрд▓ рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реИред рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЗрдореЛрд╢рди SSR (рдПрдб) рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ HTML рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ рдЗрдирдмрд┐рд▓реНрдЯ рд╣реИрдВ, рд╣рдо рд╕рд┐рд░реНрдл рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ (рд╕реАрдПрд╕рдПрд╕ рд╕реНрдЯрд╛рдЗрд▓ рдЯреИрдЧ рдХреЗ рд╕рд╛рде) HTML рдлрд╛рдЗрд▓ред рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЯреИрдЧ рдорд┐рд▓рддреЗ рд╣реИрдВред

рдпрджрд┐ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЛ рд╕рдорд╡рд░реНрддреА рдореЛрдб рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдерд╛, рддреЛ рдХреНрдпрд╛ рдпрд╣ рдЕрдзрд┐рдХ рд╕рдордЭрджрд╛рд░ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ (JSS рдХреЛ рдЫреЛрдбрд╝рдХрд░) рдХреЗ рд╕рд╛рде MUI рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдмрдВрдбрд▓ рд╕рд╛рдЗрдЬ рдореЗрдВ рдЫреЛрдЯрд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдореВрдЯ рд╣реИ рдЕрдЧрд░ 2 рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗ рдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордпреВрдЖрдИ рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

@petermikitsh рдиреЗ рдЬрд┐рди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╣рдо рднрд╛рд╡рдирд╛рдУрдВ рдкрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛, рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ рдЪрд╛рд░ рдмрд┐рдВрджреБ рд╣реИрдВ

  • рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдФрд░ рднрд╛рд╡рдирд╛рдУрдВ рдХреЗ рдмреАрдЪ рдПрдХ рдЫреЛрдЯрд╛ рдкреНрд░рд╡рд╛рд╕ рд▓рд╛рдЧрдд
    рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдкреНрд░рдпрд╛рд╕ рдХреЗ рд╕рд╛рде рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
  • рдЖрд╡рд░рдг рдШрдЯрдХреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╣реИрдВ
    рднрд╛рд╡рдирд╛ рд╕реЗ cx + css рдХрд╛ рд╕рдорд░реНрдерди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдлрд╛рдпрджреЗрдордВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдЧрд░ рд╡реЗ рд░реИрдкрд░ рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдЯрд╛рдЗрд▓ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
  • рд╕рдорд╡рд░реНрддреА рдореЛрдб рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╕рдорд░реНрдерд┐рдд sure рдХреЗ рд▓рд┐рдП рд╣реИ
  • рдХреИрд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдХреЛ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ

рдкрд╣рд▓реЗ рдмрд┐рдВрджреБ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, рдЕрдЧрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрдВрдбрд▓ рдореЗрдВ рджреЛ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рд╕рдорд╛рдзрд╛рди рд╣реЛрдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рд╡рд╛рд╕ рд▓рд╛рдЧрдд рднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдо рд╣реИ + рдпрд╣ styled рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдПрдкреАрдЖрдИ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

@ ko-toss рдпрд╣ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдпреЗ рд╕рднреА рдЕрдЪреНрдЫреЗ рдмрд┐рдВрджреБ рд╣реИрдВред рдпрд╣ рддрдереНрдп рдХрд┐ рднрд╛рд╡рдирд╛ рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд░реНрдЧ рдирд╛рдо рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИ, рдпрд╣ рдУрд╡рд░рд░рд╛рдЗрдбреНрд╕ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдЗрдВрдЬрди рдмрдирд╛рддреА рд╣реИред рдХрдИ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо рдХреЗ рдХрд╛рд░рдг рд╣рдореЗрдВ рдЬреЛ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдЕрдВрддрд┐рдо рд╡рд░реНрдЧ рдЬреАрдд рдЬрд╛рдПрдЧрд╛, рдЬреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдПрдХ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░, рдореИрдВ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬрд╣рд╛рдВ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдо рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рдирд┐рдд рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд▓рд╛рд╕рдирд╛рдо рдПрдХ рдкрд░рдорд╛рдгреБ рдирд┐рдпрдо рд╣реИ, рдФрд░ рдлрд┐рд░ рд╕реЗ рдЬреЛ рдЙрд╕реЗ рдЬреАрддрддрд╛ рд╣реИред рдЬрд┐рд╕ рдХреНрд░рдо рдореЗрдВ рд╡реЗ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдЙрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдВрдд рдореЗрдВ рдкреВрд░реНрдг рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реИред

рджреВрд╕рд░реА рдУрд░, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА css-in-js рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд▓реЛрдЧ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рдЕрдирдВрдд рд╕рдВрдпреЛрдЬрди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рд╡реЗ рдЕрднреА рднреА рдкреНрд░реЙрдкрд░ рдореВрд▓реНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрд╣реБрдд рд╕рдВрд░рдЪрд┐рдд рд╣реИрдВред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдлрд┐рд░ рд╕реЗ рдпреЗ рдЕрдЪреНрдЫреЗ рдмрд┐рдВрджреБ рд╣реИрдВ, рдХрд┐ рд╣рдорд╛рд░реЗ рдорди рдореЗрдВ рд╣реЛрдЧрд╛, рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж these

  • рдЕрдиреНрдп?

[рд╕реНрдЯрд╛рдЗрд▓рд▓реЗрдХреНрд╕] рд╡рд┐рдЪрд╛рд░ рд╕рдВрдЧрддрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ (рдЬреИрд╕реЗ [рд╕реНрдЯрд╛рдЗрд▓ 9])

  • рдЕрдиреНрдп?

рд╕реНрдЯрд╛рдЗрд▓ 9 рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕ рдЗрдВрдЬрди рдЬреЛ рд╕реНрдЯрд╛рдЗрд▓рд▓реЗрдХреНрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ

рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд┐рд▓реНрдб рдЯрд╛рдЗрдо рд╕реЗрдЯрдЕрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рд╢реБрд░реБрдЖрддреАред

(рдпрд╣ рдмрд▓реНрдХрд┐ FYI рд╣реИ, рднрд╛рд╡рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ)

https://github.com/cristianbote/goober (1kB, рдЗрдореЛрд╢рди рд╕реЗ рдХрдо рдмреБрд░рд╛)

рдореБрдЭреЗ рдЕрднреА рддрдХ рдЗрд╕рдХрд╛ рдХреЛрдИ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдПрдХ рджрд┐рди рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
image
image

@cztomsik https://github.com/kuldeepkeshwar/filbert-js рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдХреЛрдИ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдорд░реНрдерди (рдХреЗрд╡рд▓ CSS рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ) рдирд╣реАрдВ рд╣реИ

рдпрд╣рд╛рдВ рд╕рдордп-рд╕рдордп рдкрд░ рдмрд╛рддрдЪреАрдд рд╕рдордп рдкрд░ Google рд▓рд╛рдЗрдЯрд╣рд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП рд╣реИрдВ:

https://jantimon.github.io/css-framework-performance/

css-lighthouse-scores

FYI рдХрд░реЗрдВ, рдореИрдВрдиреЗ рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ v5, рдЗрдореЛрд╢рди V10, рдФрд░ рдЗрдореЛрд╢рди v11 рдХреЗ рдХреБрдЫ рд╡рд┐рд╕реНрддреГрдд рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЛ, рд╡реЗрдирд┐рд▓рд╛ рдПрдкреАрдЖрдИ, рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкрд░ рдПрдкреАрдЖрдИ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде / рдмрд┐рдирд╛ рдмрдмрд▓ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рд╣реИред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛!

https://github.com/simnalamburt/css-in-js-benchmark

рдХреНрдпрд╛ рдЖрдкрдиреЗ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдирдИ рд▓рд╣рд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ?

рдХреНрдпрд╛ рдЖрдкрдиреЗ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдирдИ рд▓рд╣рд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ?

рдпрд╣ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдкрд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрдореЛрд╢рди рднрд╛рд╡рдирд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 2 ~ 4 рдЧреБрдирд╛ рдзреАрдорд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрдореЛрд╢рди рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрд╣реБрдд рдмрдбрд╝реА рдХреНрд╖рдорддрд╛ рд╣реИ рдФрд░ рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдЧрд╣ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрдореЛрд╢рди рдЕрднреА рддрдХ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИред

рдореИрдВ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЕрднреА рддрдХ рдЯрд╛рдБрдХреЗ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИред ЁЯШГ

рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдореИрдВрдиреЗ рдХрд┐рд╕реА рдХреЛ рд▓рд┐рдиреЗрд░рд┐рдпрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рддреЗ рджреЗрдЦрд╛ рд╣реИред

рдореИрдВ рдХреБрдЫ рдмрд┐рдВрджреБ рдкрд░ рд▓рд┐рдирд╛рд░рд┐рдпрд╛ рдореЗрдВ рдареЛрдХрд░ рдЦрд╛рдИ рдФрд░ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВред рдЗрд╕рдХреЗ рд╕рд╛рде рдореЗрд░реА рдПрдХрдорд╛рддреНрд░ рдЪрд┐рдВрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЧрддрд┐рдХреА рд╢реИрд▓реА рдХреА рд╢реИрд▓реА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реАрдПрд╕рдПрд╕ рдЪрд░ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдФрд░ рдЖрдИрдЬреА 11 рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИ https://github.com/callstack/linaria/issues/445 рдкрд░ рдЖрдзрд╛рд░рд┐рдд styled-components рдХреА рддреБрд▓рдирд╛ рдореЗрдВ emotion рд╕рдореБрджрд╛рдп рдЗрд╕ рд╕рдордп рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реИред

@TheHolyWaffle
рд▓рд┐рдирд╛рд░рд┐рдпрд╛ рдХрдорд╛рд▓ рдХрд╛ рд╣реИред
Iff рдЖрдкрдиреЗ рдЗрд╕реЗ рдареАрдХ рд╕реЗ рд╕реЗрдЯ рдХрд┐рдпрд╛ рд╣реИ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ css-in-js (рджреЗрд╡ рдЕрдиреБрднрд╡ рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ) рдФрд░ рд╢реБрджреНрдз css (рд╢реБрджреНрдз css рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдирд╣реАрдВ рд╣рд░рд╛ рд╕рдХрддрд╛) рджреЛрдиреЛрдВ рдореЗрдВ рд╕реЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИред рдпрд╣ рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдореЛрдВ рдХрд╛ рднреА рдЕрдиреБрдХреВрд▓рди рдХрд░рддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рд▓рд┐рдирд╛рд░рд┐рдпрд╛ рдХреЛ рдмрд┐рд▓реНрдб рдФрд░ рдмрдВрдбрд▓рд┐рдВрдЧ рдХрджрдо рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рд╢реБрд░реБрдЖрддреА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдард┐рди рд╣реЛрдЧрд╛ред

рдореИрдВ рдЗрд╕реА рддрд░рд╣ рдПрдкреАрдЖрдИ рд╕рддрд╣ рдЬреИрд╕реЗ рдХреЗ рд╕рд╛рде рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕-рдЗрди-js рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрдпрд╛рд░ рд╣реЛрддрд╛ рд╣реЗрдЬрд╝рд▓рдирдЯ-js / goober

@kuldeepkeshwar рд╣рдо рдЖрдкрдХреЛ рд╕реНрдЯрд╛рдЗрд▓ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдбреЗрдкреНрдЯрд░ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рдЖрдкрдХреЛ рдмрддрд╛рдПрдВрдЧреЗ :)

Https://compiledcssinjs.com/ рдЗрд╕ рд╕рдм рдореЗрдВ рдХреИрд╕реЗ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ? рдпрд╣ рдПрдХ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рджреГрд╖реНрдЯрд┐рдХреЛрдг рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ; рд╕рдВрдХрд▓рд┐рдд рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП RFC рднреА рдЪрд▓рд╛рддрд╛ рд╣реИ, рдЬреЛ рдЦреБрд▓реЗ рд╕реНрд░реЛрдд рдФрд░ рд╕рд╣рдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдорд╣рд╛рди рд╕рд╛рдмрд┐рдд рд╣реЛрддрд╛ рд╣реИред _рдЖрдБрдЦ рдЭрдкрдХрдирд╛_

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗрдм рд╕реНрдЯрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднрд╡рд┐рд╖реНрдп рдмрд╣реБрдд рдЙрдЬреНрдЬреНрд╡рд▓ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдРрдк рдХреЛ рд╕реНрдЯрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЯреЗрд░рд┐рдпрд▓-рдпреВрдЖрдИ рдЧреЛ-рдЯреВ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдПрдХ рдЕрднрд┐рдиреНрди рд╣рд┐рд╕реНрд╕рд╛ рд╣реЛрдЧрд╛ред

рд╕рдВрдХрд▓рд┐рдд рдХрд╛рд░реНрдп рдореБрдЭреЗ

рдЗрд╕ рддрд░рд╣ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди рд╣рдореЗрдВ рдЕрдкрдиреЗ рдЯреВрд▓рд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ / рд╕реЗрдЯрдЕрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ рдЖрдкрдХреЗ рдШрдЯрдХ рдХреЛ рдХрд┐рд╕реА рднреА рдЙрдкрднреЛрдХреНрддрд╛ рддрдХ рдкрд╣реБрдБрдЪрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдмрд╕ рдЖрдпрд╛рдд рдФрд░ рдЬрд╛рдУред рдпрд╣ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИ, рдФрд░ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд, рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рдорд╛рди рд╣реА рд╣реИ - рдПрдХ рдХреИрдЪ рдХреЗ рд╕рд╛рдеред

_CSS рд░рдирдЯрд╛рдЗрдо рдкрд░ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред_

рдпрд╣ рдПрдХрд▓ рдмрд╛рдзрд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рджрд░рд╡рд╛рдЬреЗ рдЦреЛрд▓рддреА рд╣реИред рд╕рдордп рдЕрдиреБрдХреВрд▓рди рдмрдирд╛рдПрдБред рд░рдирдЯрд╛рдЗрдо рдЧрд╛рд░рдВрдЯреА рджреЗрддрд╛ рд╣реИред рдкреНрд░рджрд░реНрд╢рди рдХреА рдЕрдбрд╝рдЪрдиреЗрдВ рдЪрд▓реА рдЧрдИрдВред

рдПрдХ рдЕрд▓рдЧ рдкрдХреНрд╖ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВ, рдореИрдВ рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдПрдХ рдЕрдЪреНрдЫреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддреА рд╣реИред рдореБрдЭреЗ MUI рдФрд░ рдЙрд╕ рдХрд╛рдо рд╕реЗ рдкреНрдпрд╛рд░ рд╣реИ рдЬреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдЕрдм рддрдХ рдЪрд▓рд╛ рдЖ рд░рд╣рд╛ рд╣реИ; рдореБрдЭреЗ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╢рд╛рдирджрд╛рд░ рд╣реИ рдпрд╣ рдПрдХ рдкреНрд░реАрдорд┐рдпрдо рдЙрддреНрдкрд╛рдж рдмрди рдЧрдпрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЗ рд▓рд┐рдП 'рд▓реЛрдХрдкреНрд░рд┐рдп' _name_ рдЪреБрдирдирд╛ рдЙрдЪрд┐рдд рддрд░реНрдХ рдирд╣реАрдВ рд╣реИред
рдореИрдВрдиреЗ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЛ рдХрдИ рдмрд╛рд░ рд╕рдВрджрд░реНрднрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдпрд╣ рднреА рдмрд╣реБрдд рдирд╛рдкрд╕рдВрдж рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдПрдХреНрд╕ рд░рд╛рд╢рд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ x рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ - MUI рд╣реИ (рдореЗрд░реА рдкреБрд╕реНрддрдХреЛрдВ рдореЗрдВ) рдкреНрд░рджрд░реНрд╢рди, рдбреАрдПрдХреНрд╕, рдФрд░ рдЕрдиреНрдп рдЪреАрдЬреЛрдВ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХреЗрд╡рд▓ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдирд╣реАрдВред

MUI рдореЗрдВ рд╣рдореЗрд╢рд╛ 60k рд╕рд┐рддрд╛рд░реЗ рдирд╣реАрдВ рдереЗ, рдпрд╣ рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓рд╛ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдиреЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рддрдХрдиреАрдХ (рдпрд╛ рдХрд░реАрдм) рдХреЛ рдЪреБрдирд╛, рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐ рдЗрд╕рдиреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рддрдХрдиреАрдХ рдХреЛ рдЪреБрдирд╛ред

рдпрджрд┐ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЛрдЯ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЪрдпрди рдПрдХ рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реЛрдиреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╣реИ, рддреЛ рдпрд╣ рд╡реНрдпрд╡рд╕рд╛рдп рдХреА рдЪрд┐рдВрддрд╛рдПрдВ рд╣реИрдВ, рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рд╡реГрджреНрдзрд┐ рдирд╣реАрдВред рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдпрд╛ рдЙрд╕рдХреЗ рдмрд┐рдирд╛ рд░рд╣рддреА рд╣реИред рдпрд╣ рдмреБрд░реЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдорд░ рдЬрд╛рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдмрд╛рддреЗрдВ рд╣реИрдВ рдФрд░ рдкрдврд╝рдирд╛ "рдпрд╣ рдХрд╛рдлреА рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ" рдмрд╣реБрдд рдЬреЛрд░ рд╕реЗ рдШрдВрдЯреА рдмрдЬрддреА рд╣реИред

рд▓реЛрдЧ рдПрдХ рд╕рд╣реА рдЙрддреНрдкрд╛рдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдирд╣реАрдВ рдХрд┐ рдпрд╣ рд▓реЛрдХрдкреНрд░рд┐рдп рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ; MUI рдПрдХ рдмрд╛рд░ рдЖрд▓рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдпрд╣ рддрдм рднреА рдкреНрд░рд╕рд┐рджреНрдз рд╣реЛ рдЧрдпрд╛ рдЬрдм рдЗрд╕рдореЗрдВ CSS-in-JS рдерд╛, рдЬрд┐рд╕рдиреЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЛрдЯ btw рдХреЛ рдирд╣реАрдВ рдЬреАрддрд╛ред рдЗрд╕рдореЗрдВ рдмрд╕ рдХреБрдЫ рдЕрджреНрднреБрдд рдЧреБрдг рд╣реИрдВ рдФрд░ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдП рдЧрдП рд╣реИрдВ рдЬреЛ рд╡рд░реНрддрдорд╛рди рд╕рдореБрджрд╛рдп рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ DX рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдирд╣реАрдВ рдереЗред

рдпрд╣ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдореИрдВ рдЦреБрдж рд▓реЛрдХрдкреНрд░рд┐рдп рд╡реЛрдЯ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╣реВрдВ; рдЗрд╕рд▓рд┐рдП рдЕрдЧрд░ рдХреБрдЫ рднреА рд╣реИ, рддреЛ рдореИрдВ рдЦреБрдж рдХреЛ рднреА рддреЛрдбрд╝рдлреЛрдбрд╝ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдХрд┐рд╕реА рднреА рддрд░рд╣ рдХреЗ рдХрдо рд▓реЛрдХрдкреНрд░рд┐рдп рдЙрддреНрдкрд╛рдж рдХреЛ рдЪреБрдирдиреЗ рд╕реЗ рдореЗрд░рд╛ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд▓рд╛рдн рдирд╣реАрдВ рд╣реИ, рдореЗрд░реА рд░рд╛рдп рд╣реИ рдХрд┐ рдХреНрд░рд╛рдВрддрд┐рдпреЛрдВ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╕рдордп рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдХреЛ _at all_ рдирд╣реАрдВ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреГрдкрдпрд╛ рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдкреБрдирд░реНрд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдЬреЛ рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣реИрдВ, рди рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рд╡рд┐рдХрд▓реНрдк рдХреА рд╡рд░реНрддрдорд╛рди рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦрддреНрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ MUI рдореЗрдВ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╣рд░ рд╡рд┐рдЪрд╛рд░ рдФрд░ рдХрд┐рд╕реА рднреА рд╕рдордп рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░реА рд╣реВрдВред рдореИрдВрдиреЗ рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рд╡рд░реНрд╖реЛрдВ рдореЗрдВ рд╕рднреА рдорд╛рдирдХреЛрдВ рдЖрджрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реБрдП рдХреБрдЫ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ (рджреБрдЦрдж рдирд┐рдЬреА) рдЙрдкрд╛рдп рдХрд┐рдП рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХрд▓ рдмрдирд╛рдиреЗ рдореЗрдВ рдорд╣реАрдиреЛрдВ рдпрд╛ рд╡рд░реНрд╖реЛрдВ рдХрд╛ рд╕рдордп рд▓рдЧрд╛ рд╣реЛрдЧрд╛! рдореИрдВ рдЕрдкрдиреА рдкреНрд░рд╢рдВрд╕рд╛ рдХрд╛ рд╡рд░реНрдгрди рд▓рдЧрднрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХрд╛рдЧрдЬрд╝ рдкрд░ рдЪрдордХрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ

рдореИрдВ рдЙрддреНрд╕реБрдХ рд╣реВрдБ рдЕрдЧрд░ рд╕рдВрдХрд▓рд┐рдд рднреА рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдФрд░ рдпрд╣ рдХреИрд╕реЗ рдПрдбреЗрдкреНрдЯрд░ рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░реЗрдЧрд╛ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдВрдХрд▓рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг:

рд╕рдВрдХрд▓рд┐рдд рдЬреЗрдПрд╕ рдореЗрдВ рдЕрдкрдиреЗ рд╕реАрдПрд╕рдПрд╕ рдХреЛ рдЕрдкрдиреЗ рдХреЛрдб рдХрд╛ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рдХреЗ рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рдШрдЯрдХреЛрдВ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдХреЗ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред рд╕рдм рдХреБрдЫ рд╣рдо рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдВрдбрд▓ рдореЗрдВ рдкрдХреНрд╖ рдХреЗ рд╕рд╛рде рд╢рд╛рдорд┐рд▓ рд╣реИред

рд╕реЛрдЪрдиреЗ рдХрд╛ рдПрдХ рд░рд╛рд╕реНрддрд╛ рд╣реИ, рд░рдирд┐рдВрдЧ рдХреА рдХрдореА рдкрд░ рдкреВрд░реЗ рд╕рдВрдХрд▓рди 'рд╕реАрдПрд╕рдПрд╕' рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдПред

рдореИрдВ рдЗрд╕реЗ рдЗрдореЛрд╢рди рдореЗрдВрдЯреЗрдирд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ - рд╕рдВрдХрд▓рд┐рдд рдорд╣рд╛рди рд╣реИред рдпрд╛ рдмрд▓реНрдХрд┐ - рдпрд╣ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рдмрд╣реБрдд рд░реЛрдорд╛рдВрдЪрдХ рд╕рд╛рдорд╛рди рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдЕрднреА рднреА рдкреНрд░рдпреЛрдЧ рдореЗрдВ рдХрд╛рдлреА рдЬрд▓реНрджреА рд╣реИред рдореБрдЭреЗ рдмрд╣реБрдд рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ MUI рдЗрд╕ рд╕рдордп рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдореБрдЭреЗ рд╕рд╣реА рд╣реИ рдЕрдЧрд░ рдореИрдВ рдЧрд▓рдд рд╣реВрдБ, рд▓реЗрдХрд┐рди рд╕рдВрдХрд▓рд┐рдд рд╣реЛрдиреЗ рдХрд╛ рддрд╛рддреНрдкрд░реНрдп рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рд╕реЗ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдХрд╕реНрдЯрдо рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рднреА MUI рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдлрд╛рдЗрд▓ рд░рдЦрдирд╛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реЛрдЧрд╛ред

рдореИрдВ рд╕рд┐рд░реНрдл MUI рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдиреНрдпрд╛рд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рд╣реЛрдиреЗ рд╕реЗ рдирдлрд░рдд рдХрд░рддрд╛ рд╣реВрдБред рдПрдХ рд╕рд╛рдЗрдб рдиреЛрдЯ рдкрд░: рдХреНрд░рд┐рдПрдЯ рд░рд┐рдПрдХреНрдЯ рдРрдк рдЬреИрд╕реЗ рд░рд╛рдпрд╢реБрджрд╛ рдмреВрдЯрд╕реНрдЯреНрд░реИрдкрд░реНрд╕ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдЧрд╛?

@ рднрд╛рд░рддрд╡рд╛рд╕реА рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕рд╣рдордд рд╣реВрдБред рдореИрдВ рдПрдХ рд╕рд╣рдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ред рдореИрдВ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рд╣реВрдБ рдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдХрд╣рд╛рдБ рд▓реЗ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ! : рдЖрдБрдЦреЗрдВ: рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд╕рдВрдХрд▓рд┐рдд рд╣реИ - рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ - рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдорд╣рд╛рди рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдмрд╣реБрдд рдмрдврд╝рд┐рдпрд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдХреБрдЫ рд╢рд╛рдирджрд╛рд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдорд╣рд╛рди рджрд┐рдорд╛рдЧ рдПрдХ рд╕рд╛рде рдорд┐рд▓реЗрдВред

@shilangyu рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдХреНрдпрд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдХреБрдЫ рдпрд╛рдж рдЖ рд░рд╣рд╛ рд╣реИред рддреЛ рдореИрдВ рдмрд╕ рдЗрддрдирд╛ рд╣реА рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рд╕рдВрдХрд▓рд┐рдд рдХрд┐рдП рдЧрдП

рд╢реВрдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдкрд░ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░реЗрдВ

рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдкрд╕рдВрдж рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдПрдкреАрдЖрдИ рд╕рд╡рд╛рд░реА рдХреЗ рд▓рд┐рдП рдпрд╣рд╛рдВ рд╕рднреА рд╣реИрдВ - рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЛрдк рдФрд░ рдХреНрд▓рд╛рд╕ рдирд╛рдо рдШрдЯрдХ! рд╣рдорд╛рд░реЗ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЛ рдпрд╣ рднреА рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡реЗ рд╣рдорд╛рд░реЗ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХреИрд╕реЗ рдХрд░рддреЗ рд╣реИрдВ, рд╢реВрдиреНрдп рдХреЙрдиреНрдлрд┐рдЧ рдХрд╣рд╛рдиреА рдХреЛ рдЬрд╛рд░реА рд░рдЦрддреЗ рд╣реБрдП рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреЗ рдмрдВрдбрд▓ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдФрд░ рди рд╣реА рдЙрдиреНрд╣реЗрдВ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рд░реЗрдВрдбрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЪреАрдЬрд╝ рдХреЛ рд╕реЗрдЯрдЕрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдпрд╣ рд╕рд┐рд░реНрдл рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдмрд╕ рд╢реБрд░реБрд╡рд╛рдд рд╣реИ

рд╢реВрдиреНрдп рд╢реВрдиреНрдп рдЖрдЙрдЯ-рдСрдл-рдж-рдмреЙрдХреНрд╕ рдХреЗ рд╕рд╛рде, рд╣рдо рдпрд╣ рдирд╣реАрдВ рднреВрд▓ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдХрд▓ рдХреНрдпрд╛ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИред рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕реАрдПрд╕рдПрд╕ рдирд┐рд╖реНрдХрд░реНрд╖рдг рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде, рд╕реАрдПрд╕рдПрд╕ рдХреЛ рдкрд░рдорд╛рдгреБ рд░реВрдк рдореЗрдВ рдмрджрд▓рдирд╛, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╣рдорд╛рд░реЗ рдХреЛрдб рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдПрд╕ рдбреЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг, рд╣рдо рдХрд▓ рдПрдХ рд░реЛрдорд╛рдВрдЪрдХ рд╕реЛрдЪ рд░рд╣реЗ рд╣реИрдВред

@MathiasKandelborg
рдореИрдВрдиреЗ https://compiledcssinjs.com/ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдХрд┐рдореНрдб рдХрд┐рдпрд╛ред рдХреНрдпрд╛ рдпрд╣ рдЕрднреА рднреА рд░рди-рдЯрд╛рдЗрдо css-in-js рдирд╣реАрдВ рд╣реИ?
рдпрд╣ рдмрд┐рд▓реНрдб рд╕рдордп рдкрд░ рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдПрдВ рдмрдирд╛рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдЙрд╕ рд╢реИрд▓реА рдкрд░ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ (рд░рди рдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдмрд┐рд▓реНрдб рдЯрд╛рдЗрдо рдЙрддреНрдкрдиреНрди рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕реНрдЯрд╛рдЗрд▓ рдЯреИрдЧ рдмрдирд╛рддрд╛ рд╣реИ) рд░рдирдЯрд╛рдЗрдо рдкрд░ <CC>...</CC> рдЯреИрдЧ рдХреЗ рд╕рд╛рдеред
рдпрджрд┐ рдпрд╣ рдХреЗрд╡рд▓ рд╢реБрджреНрдз рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд░реВрдк рдореЗрдВ рддреЗрдЬрд╝ рд╣реИ рддреЛ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рднрд╡рд┐рд╖реНрдп рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реАрдПрд╕рдПрд╕ рдЪрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ)ред рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж
рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдпрд╣ рднрд╛рд╡рдирд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд┐рддрдирд╛ рддреЗрдЬ рд╣реИред

рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛? рдореИрдВрдиреЗ рдХрд┐рд╕реА рдХреЛ рд▓рд┐рдиреЗрд░рд┐рдпрд╛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рддреЗ рджреЗрдЦрд╛ рд╣реИред

рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдореЗрдВ рд╣рдордиреЗ рдЬреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рд╕рдорд╛рдзрд╛рди рдХреЛ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдЙрдкрднреЛрдХреНрддрд╛рдУрдВ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рд╢реВрдиреНрдп-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИред рдЕрдЧрд░ рдореБрдЭреЗ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рд╕рдорд╛рдзрд╛рди рд╕рдордЭ рдореЗрдВ рдЖрдпрд╛, рддреЛ рд╡реЗ рд╕рдВрдХрд▓рди рд╕рдордп рдкрд░ рдХреБрдЫ рд╕реАрдПрд╕рдПрд╕ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдореБрдЭреЗ рдЕрдкрдиреЗ рдмрдВрдбрд▓ рдХреЛ рдареАрдХ рд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрдЕрдк рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ?

рдЗрд╕рд▓рд┐рдП рдЬрдмрдХрд┐ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рд╕рдВрднрд╡рддрдГ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдХ рд╢реВрдиреНрдп-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЬрд┐рд╕реЗ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрджрд░реНрд╢ рд╣реЛрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдЬрдмрдХрд┐ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рд╕рдВрднрд╡рддрдГ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рд╕рдорд╛рдзрд╛рди рд╣реИ, рдЗрд╕рдХреЗ рд▓рд┐рдП рдЕрддрд┐рд░рд┐рдХреНрдд рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдПрдХ рд╢реВрдиреНрдп-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЬрд┐рд╕реЗ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрджрд░реНрд╢ рд╣реЛрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред

рдХреЗрдВрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХреА рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрдИ рдмрд╛рд░ рдЕрдиреБрдЪрд░ рдХреЗ рд╕рд╛рде рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ рдпрд╣ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдпреЛрдЬрдирд╛ рд╣реИ - рд╡рд┐рдЪрд╛рд░ рднрд╛рд╡рдирд╛ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рд╡рд╛рд▓реЗ рдШрдЯрдХ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдб рд▓рд┐рдЦреЗ рдЧрдП рдЕрдиреБрдХреВрд▓рди рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рдд рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдЖрдпрд╛рдд рдмрджрд▓ рд░рд╣рд╛ рд╣реИ рдФрд░ рдПрдХ рдЯреНрд░рд╛рдВрд╕рдлрд╝реЙрд░реНрдо рдкреНрд▓рдЧрдЗрди рдпрд╛ рдПрдХ рд╡реЗрдмрдкреИрдХ рд▓реЛрдбрд░ рд╕рд╣рд┐рддред рдпрд╣, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ, рд╕рднреА рдХреЛрдб рдХреЛ рд╕рдореНрднрд╡рдд: рдирд╣реАрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (JS is рд╡рд╛рдЗрд▓реНрдб), рд▓реЗрдХрд┐рди рдпрд╣ shohld рд╕рдордЭрджрд╛рд░реА рд╕реЗ рд▓рд┐рдЦреЗ рдЧрдП рдХреЛрдб рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред рдЕрдЧрд░ рдпрд╣ рдХреБрдЫ рд╕рдВрдХрд▓рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдпрд╣ рдмрд╕ рдлреЗрдВрдХ рджреЗрдЧрд╛ - рдПрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд░рдирд╛ рдпрд╛ рд╕реНрдерд┐рд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреА рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдХреЛрдб рдХреЗ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рднрд╛рдЧ рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ред

рддреЛ рдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП - рдпрджрд┐ рдЖрдк 0config рдЗрдореЛрд╢рди (рдпрд╛ рд╕реНрдЯрд╛рд▓реНрдб рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕) рдХреЗ рд╕рд╛рде рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдСрдкреНрдЯрд┐рдорд╛рдЗрдЬреЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдХрдВрдкрд╛рдЗрд▓ рдХреЛ рдПрдбреЙрдкреНрдЯ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрджрд┐ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдЬреЛ рд╡рд╛рджрд╛ рдХрд░рддрд╛ рд╣реИ рдЙрд╕реЗ рдбрд┐рд▓реАрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдиреЗрдЬ рдХрд░реЗрдЧрд╛)

@ ko-toss рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдирд┐рд░реНрдорд┐рдд рд╕рдордп рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рд╣реИред рд░рдирдЯрд╛рдЗрдо рдХреЗ рджреМрд░рд╛рди, рдШрдЯрдХ рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рдЙрдирдХреЗ рд╕рд╣реА рд╕реНрдерд╛рди рдкрд░ рд▓реЗ рдЬрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЬреИрд╕рд╛ рдХрд┐ рд╡реЗ рд╡реЗрдмрдкреЗрдЬ рдкрд░ рдХрд╣рддреЗ рд╣реИрдВ:

рд╕рдм рдХреБрдЫ рд╣рдо рдШрдЯрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдмрдВрдбрд▓ рдореЗрдВ рдкрдХреНрд╖ рдХреЗ рд╕рд╛рде рд╢рд╛рдорд┐рд▓ рд╣реИред

рд╣рдо рдЖрдкрдХрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдХреЛрдб рдЗрд╕рдХреА рдорд╣рд┐рдорд╛ рдореЗрдВ рд▓реЗрддреЗ рд╣реИрдВ:

import { styled } from '@compiled/css-in-js';

export const ColoredText = styled.span`
  color: #ff5630;
`;

рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдПрдХ рд╕рдВрдХрд▓рд┐рдд рдШрдЯрдХ рдореЗрдВ рдмрджрд▓ рджреЗрдВ:

...
...

рдЬреЛ рддрдм рд░рдирдЯрд╛рдЗрдо рдкрд░ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреНрд╕ рдХреЛ рд╣реЗрдб рдХреЗ рдкрд╛рд╕ рд▓реЗ рдЬрд╛рдПрдЧрд╛ред

рдЗрд╕ рддрд░рд╣ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди рд╣рдореЗрдВ рдЕрдкрдиреЗ рдЯреВрд▓рд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ / рд╕реЗрдЯрдЕрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛, рдЖрдкрдХреЗ рдШрдЯрдХ рдХреЛ рдХрд┐рд╕реА рднреА рдЙрдкрднреЛрдХреНрддрд╛ рддрдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдмрд╕ рдЖрдпрд╛рдд рдФрд░ рдЬрд╛рдУред рдпрд╣ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИ, рдФрд░ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рдорд╛рди рд╣реА рд╣реИ - рдПрдХ рдХреИрдЪ рдХреЗ рд╕рд╛рдеред

рд╕реАрдПрд╕рдПрд╕ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред


рдПрдХ рд╢реВрдиреНрдп-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЬрд┐рд╕реЗ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрджрд░реНрд╢ рд╣реЛрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдмрд┐рд▓рдХреБрд▓ рд╕рдЯреАрдХ рдЬрдЧрд╣ рд╡рд╛рд░ рдХрд┐рдпрд╛ред рдпрд╣ рд╕реНрд╡рдкреНрди рдореЗрдВ рдЕрдЪрд╛рдирдХ рд╕рдкрдирд╛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪрд╛рдирдХ рдорд╣рд╕реВрд╕ рд╣реЛрдЧрд╛ред

рддрд▓рд╛рд╢рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ рдФрд░ рд╢рд╛рдпрдж рдХреБрдЫ рд╕рд╣рдпреЛрдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреБрдЫ рдХреЛрдб рдФрд░ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдВ рдореЗрд░реЗ рд▓рд┐рдП рдереЛрдбрд╝реА рд╡рд┐рджреЗрд╢реА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХрдИ рд╡рд┐рд╡рд░рдгреЛрдВ рдореЗрдВ рдЬрд╛рдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВред рдпрд╣рд╛рдБ рдХреБрдЫ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдЙрддреНрд╕рд╛рд╣рд┐рдд рд╣реВрдБ:

  • рд╕реНрдереИрддрд┐рдХ рд╡рд┐рд╢реНрд▓реЗрд╖рдг - рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рдПрдХ рд╣реИред рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдЖрдк рдПрдХ рд╕реНрдЯрд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдПрдХреНрд╕ рдирд┐рдпрдо, рд╕рдореНрдореЗрд▓рди рдпрд╛ рдХрд▓реНрдкрдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕рд┐рдлрд╛рд░рд┐рд╢реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рдП рдХрд┐ рдЖрдк рдЗрд╕рдХрд╛ рдЕрдиреБрдХреВрд▓рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
  • рд╢реВрдиреНрдп рд╡рд┐рдиреНрдпрд╛рд╕ - рднрд▓реЗ рд╣реА рдореИрдВ рдЖрд▓рд╕реНрдп рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрд╡рддрдВрддреНрд░рддрд╛ рдХреЛ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреВрдВрдЧрд╛ (x рдмрдВрдбрд▓рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рдЧрдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛)
  • рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕рдПрд╕ рд╕реЗ рд╢реБрджреНрдз рд╕реАрдПрд╕рдПрд╕, рдореВрд▓ рд░реВрдк рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓ рдХреЛ рд╕рдордп рдкрд░ рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рдирдЯрд╛рдЗрдо рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

IE11 рд╕рдорд░реНрдерди рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдЖрдк рдЖрдБрдХрдбрд╝реЗ рдХреИрд╕реЗ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ? рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рдмрд╛рдд рд╣реИред рдПрдЬ рдЕрдм рдХреНрд░реЛрдорд┐рдпрдо рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реНрдпрд╡рд╕рд╛рдпреЛрдВ рдХреЛ рд╕реНрд╡рд┐рдЪ рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рдПрдордПрд╕ рдЕрдВрддрддрдГ IE рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдмрдВрдж рдХрд░

рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ IE11 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рди рд╣реЛред рдпрд╣ рдЕрдм рдЙрджреНрдпреЛрдЧ рдорд╛рдирдХ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛

рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдХрд┐ IE11 рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рди рд╣реЛред

рдЙрд╕рдХреЗ рд▓рд┐рдП https://github.com/mui-org/material-ui/issues/14420 рджреЗрдЦреЗрдВред

рд╣рдо IE рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдирд╣реАрдВ рдмрдирд╛рддреЗ рд╣реИрдВред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХреА рд╕рдВрднрд╛рд╡рдирд╛ IE 11 рдХреЛ v5 рдореЗрдВ рд▓рдХреНрд╖рд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧреА, рд▓реЗрдХрд┐рди рд╣рдо рдПрдХ рдРрд╕рд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдЪреБрди рд╕рдХрддреЗ рдЬреЛ IE 11 рдореЗрдВ рдмрд┐рд▓реНрдХреБрд▓ рдХрд╛рдо рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдпрд╛ рдпрд╣ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╣рдо рдмрд┐рд▓реНрдб рд╕рдордп рдкрд░ рд╕реНрд╡реИрдк рдХрд░ рд╕рдХреЗрдВ рдФрд░ рдЙрд╕реА рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░реЗрдВ рдЙрддреНрдкрд╛рджрдиред

рдпрд╣ рдордЭреЗ рдЦреБрд╢ рдХрд░рддрд╛ рд╣реИред

рдХреНрдпрд╛ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдореМрдЬреВрджрд╛ jss рдХреЛ рд╕реНрдЯрд╛рдЗрд▓ / рдЗрдореЛрд╢рди рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХреЛрдб рдореЙрдб рд╣реИ?

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред рдореИрдВ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЖрдиреЗ рдХрд╛ рдЕрд╡рд╕рд░ рд▓реЗ рд░рд╣рд╛ рд╣реВрдВред

рд╡рд░реНрддрдорд╛рди рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдордЯреЗрд░рд┐рдпрд▓ рдпреВрдЖрдИ рдмрд┐рдирд╛ рдХрд┐рд╕реА рдбрд╛рдпрдиреЗрдорд┐рдХ рд╕реНрдЯрд╛рдЗрд▓ (рд╕реНрдЯрд╛рдЗрд▓ рдЬреЛ рдХрд┐ рдлрдВрдХреНрд╢рди рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ) рдХреЗ рдмрд┐рдирд╛ withStyles HOC рдХрд╛ рднрд╛рд░реА рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ makeStyles рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред makeStyles (рдбрд╛рдпрдиреЗрдорд┐рдХ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдмрд┐рдирд╛) рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдХрд╛рдлреА рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдФрд░ рднреМрддрд┐рдХ рдпреВрдЖрдИ рдФрд░ рднреА рддреЗрдЬ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЕрдЧрд░ рдпрд╣ рд╕реАрдзреЗ withStyles рдмрдЬрд╛рдп рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬреЛ рдПрдХ рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЖрд╡рд░рдг рдмрдирд╛рддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЗрд╕ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХрд╛ рдПрдХ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдмрдирд╛рдпрд╛ рд╣реИ , рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рд╡рд░реНрд╕реЗрд▓ рдореЗрдВ рддреИрдирд╛рдд рдХрд┐рдпрд╛ рд╣реИ, рддрд╛рдХрд┐ рд╕рднреА рдХреЛрдб рдЙрддреНрдкрд╛рджрди рдЭрдВрдбреЗ рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рд╣реЛред рдмреЗрдВрдЪрдорд╛рд░реНрдХ JSS рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди CSS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдб рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдБ рд▓рд┐рдВрдХ рд╣реИрдВ:

100 рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП :

500 рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП :

2500 рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП :

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, emotion рдФрд░ styled-components рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, makeStyles рдорд╛рдЙрдВрдЯ рдкрд░ 2-4x рддреЗрдЬреА рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдЕрджреНрдпрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП 6-8x рддреЗрдЬ рд╣реЛрддрд╛ рд╣реИред

рдЕрдВрддрд░ рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╣рдо рдХрдо-рд╢рдХреНрддрд┐ рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдгреЛрдВ, рдЬреИрд╕реЗ рд╣рдорд╛рд░реЗ рдлреЛрди рдкрд░ рдкреНрд░рджрд╛рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ .. рдФрд░ рд╡рд╣рд╛рдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рднрджреНрджреЗ рдлреЛрди рд╣реИрдВред

рдпрд╣ рд╕рдм рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореИрдВ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╡рд╛рд╕рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ emotion рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ , рдЬреЛ 3-5x рдХрд╛рд░рдХ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рд╛рдордЧреНрд░реА UI рдФрд░ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдкреНрд░рддрд┐рдкрд╛рджрди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ (рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдЪ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдШрдЯрдХ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ; рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛрдЧрд╛, рдЙрддрдирд╛ рдХрдо рдЕрдВрддрд░ рд╣реЛрдЧрд╛)ред

рдХреБрдЫ рдкреНрд░рд╢реНрди рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рднреЛрдЬрди:

  • рдХреНрдпрд╛ DX рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ UX рдЯреНрд░реЗрдбрдСрдлрд╝ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ? рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ DX рдбрд┐рдмреЗрдЯреЗрдмрд▓ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдХрдИ рд▓реЛрдЧ makeStyles рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ
  • makeStyles рдХреА рд╕рдорд╕реНрдпрд╛ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╣реИ, рдЬреЛ рдирд┐рдпрддрд╛рддреНрдордХ рдХреИрд╢ рдЖрдИрдбреА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдареАрдХ рд╣реЛрдиреЗ рд▓рдЧрддреА рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╣рд░ рдШрдЯрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЧрддрд┐рд╢реАрд▓ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдЖрдИрдбреА рдорд┐рд▓рддреА рд╣реИ, рднрд▓реЗ рд╣реА рдкреНрд░реЙрдкреНрд╕ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯрд╛рдЗрд▓ рд╕рдорд╛рди рд╣реЛрдВ, рдЬрд┐рд╕рд╕реЗ рд░рдирдЯрд╛рдЗрдо рдУрд╡рд░рд╣реЗрдб, рд╕рд┐рд░ рдореЗрдВ рдХрдИ рд╕реНрдЯрд╛рдЗрд▓ рдЯреИрдЧ рдФрд░ рдПрд╕рдПрд╕рдЖрд░ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХрдореА рдЖрдПред рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИрд╢рд┐рдВрдЧ рд░рдгрдиреАрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддрдп рдХрд┐рдП рдЧрдП рд▓рдЧрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдЬреЗрдПрд╕ рдХреЗ рдХрдИ рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕ рд▓рд┐рдмрд╛рд╕ рдореЗрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдВрдмрдВрдзрд┐рдд: https://github.com/mui-org/material-ui/pull/16858
  • рдХреНрдпрд╛ emotion рдФрд░ styled-components рдкрд╛рд╕ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕реНрдерд╛рди рд╣реИ, рдпрд╛ makeStyles рд╕реЗ рдмреЗрд╣рддрд░ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?
  • рдХреНрдпрд╛ рд╕рд╛рдордЧреНрд░реА UI рдПрдХ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдЬреЗрдПрд╕рдПрд╕ рдЗрдВрдЬрди рдПрдбреЙрдкреНрдЯрд░ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░реЗрдЧрд╛ рддрд╛рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЗрд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдЪреБрди рд╕рдХреЗрдВ?

рдореИрдВ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдиреБрдХрд╕рд╛рди рдХреЗ рд╕рд╛рде рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВред

300% рдкреНрд░рджрд░реНрд╢рди рд╣рд╛рдирд┐ рдирд╣реАрдВ, рдХрд┐рд╕реА рднреА рдХреАрдордд рдкрд░ рдирд╣реАрдВред ЁЯШЕ

@satazor рдЗрд╕ рдЦреЛрдЬ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рд╣рдордиреЗ рдЗрд╕ рдкреНрд░рдпрд╛рд╕ рдХреЛ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рднрд╛рд░реА рдкрд░рд┐рдХреНрд╖рдг рдХрд┐рдпрд╛ рдерд╛, рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП PR https://github.com/mui-org/material-ui/pull/22173 рджреЗрдЦреЗрдВ (рд╣рдордиреЗ рдЗрд╕реЗ ListItem рдШрдЯрдХ рдкрд░ рдХрд┐рдпрд╛ рдерд╛) рдФрд░ рдкреВрд░реНрдг рдЕрдВрддрд░ рдерд╛ рдЙрддреНрдкрд╛рджрди рдореЛрдб рдореЗрдВ x1000 рдЙрджрд╛рд╣рд░рдг рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ

https://deploy-preview-22173--material-ui.netlify.app/performance/list-raw/

https://deploy-preview-22173--material-ui.netlify.app/performance/list-mui/

https://deploy-preview-22173--material-ui.netlify.app/performance/list-styled/

https://deploy-preview-22173--material-ui.netlify.app/performance/list-styled-wrapper/

рдЗрд╕рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рд╣рдордиреЗ рдЗрд╕ рдЕрдВрддрд░ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдореЗрдВ рдЬреЛ рд▓рд╛рдн рдорд┐рд▓реЗрдЧрд╛ (рдбрд╛рдпрдиреЗрдорд┐рдХ рдкреНрд░реЙрдкреНрд╕ рдСрдл рдж рдмреЙрдХреНрд╕, рд╕реНрдЯрд╛рдЗрд▓ рдПрдкреАрдЖрдИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рдкреНрд░рддрд┐рд╢рдд рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛) - рдкреВрд░реЗ рд╕рд╛рд░рд╛рдВрд╢ рдХреЛ рдЦреЛрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдкреАрдЖрд░ рд╡рд┐рд╡рд░рдг :))

рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдкрд░ рдХреНрдпрд╛ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рд▓реЗрдХрд┐рди 3-5x рдореБрдЭреЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд▓рдЧрддрд╛ рд╣реИ, рдпрд╣ рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреЛрдИ рднреА emotion / styled-compoenents рдпрджрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рдерд╛ .. рд╣рдо рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рджреЛ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд╣рд╛рдВ рд╣реИ, рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рдХреБрдЫ рдпрд╛рдж рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдПрдордпреВрдЖрдИ рдШрдЯрдХ рдкрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХрд░рдирд╛ рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЕрдзрд┐рдХ рдпрдерд╛рд░реНрдерд╡рд╛рджреА рд╕рдВрдЦреНрдпрд╛рдПрдВ рдорд┐рд▓реЗрдВрдЧреА, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЗрд╕ рддрд░рдл рдЕрдзрд┐рдХ рдЕрдиреНрд╡реЗрд╖рдг рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ PR рдПрдХ рдЕрдЪреНрдЫрд╛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рд╣реИред

рдЙрддреНрддрд░ @mnajdova рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдЖрдк рд╕рд╣реА рд╣реИрдВ рдХрд┐ рдореБрдИ рдШрдЯрдХ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдЕрдзрд┐рдХ рдпрдерд╛рд░реНрдерд╡рд╛рджреА рд╣реЛрдЧрд╛ред рд╢рд╛рдпрдж рдпрд╣ рд╣реЛ рд░рд╣рд╛ рд╣реИ рдХрд┐ рд╕реВрдЪреА рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдореБрдИ рдХреЛрдб рдкреНрд░рдореБрдЦ рдзреАрдорд╛рдкрди рдХрд╛рд░рдХ рд╣реИ, рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рдЕрдВрддрд░ (~ 30ms) рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рддрд┐рдкрд╛рджрди рд╕рдордп рдЕрдВрддрд░ рд╣реИред рдореИрдВ рдЙрд╕ рдкреАрдЖрд░ рдХрд╛ рдХреЛрдб рд▓реЗ рд▓реВрдВрдЧрд╛ рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдореЗрдВ рдЬреЛрдбрд╝ рджреВрдВрдЧрд╛, рдкрд░рд┐рдгрд╛рдо рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдПред

рдХреНрдпрд╛ рдпрд╣ рдорд╛рдорд▓рд╛ рдЕрдВрдд рдореЗрдВ рд╣реЛрдЧрд╛? рд╢рд╛рдпрдж рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдРрдк рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рд╡рд░реНрддрдорд╛рди Mui рдШрдЯрдХреЛрдВ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рд╡рд╛рд▓реЗ рдХреЗ рдмреАрдЪ рдкреНрд░рджрд░реНрд╢рди рдЕрдВрддрд░ рдмрдврд╝ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддрд┐рдкрд╛рджрди рдХреЛрдб рд╕реНрд╡рдпрдВ рд╕рд░рд▓ рд╣реИред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рдЖрдЗрдХрди рдпрд╛ рдЯрд╛рдЗрдкреЛрдЧреНрд░рд╛рдлреА рдШрдЯрдХреЛрдВ рдкрд░ рдмрдврд╝реЗ рд╣реБрдП рдЕрдВрддрд░ рдХреЛ рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП рдорддрднреЗрдж рдХрдо рд╣реЛ рдЧрдП рд╣реИрдВред рддреЛ, рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрдк рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдФрд░ рдРрдк рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХрд╛рд░ рдХреЗ рдШрдЯрдХреЛрдВ рдХреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдЬреЛ рд╕рд╛рдордЧреНрд░реА UI рдФрд░ рд╕рд╛рдЗрдЯреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдкрд╛рджрди рдкреНрд░рджрд░реНрд╢рди рдШрдЯрд╛рдХрд░ 3-5x рдХрд╛рд░рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред

рдЖрдкрдиреЗ рдПрдХ рдРрд╕рд╛ рдорд╛рдирджрдВрдб рдмрдирд╛рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдХрд╛рд░рдХ рд╣реИред рдпрд╣ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдПрдХ рдШрдЯрдХ рдЗрд╕ рдХрдореА рдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ред рдХреГрдкрдпрд╛ рдЗрд╕ рднреНрд░рд╛рдордХ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдлреИрд▓рдиреЗ рд╡рд╛рд▓реА рднреНрд░рд╛рдордХ рдЬрд╛рдирдХрд╛рд░реА рдлреИрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдЬрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред

Devtools рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдВрдиреЗ рдореЗрдХ рд╕рд┐рдЯрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдорд╛рдЙрдВрдЯ рдХреЗ рд▓рд┐рдП рднрд╛рд╡рдирд╛ рдмрдирд╛рдо 120ms рдХреЗ рд╕рд╛рде рдорд╛рдЙрдВрдЯ рдХреЗ рд▓рд┐рдП 140ms рджреЗрдЦрд╛ред

рдЖрдкрдиреЗ рдПрдХ рдРрд╕рд╛ рдорд╛рдирджрдВрдб рдмрдирд╛рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдХрд╛рд░рдХ рд╣реИред рдпрд╣ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдПрдХ рдШрдЯрдХ рдЗрд╕ рдХрдореА рдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ред рдХреГрдкрдпрд╛ рдЗрд╕ рднреНрд░рд╛рдордХ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдлреИрд▓рдиреЗ рд╡рд╛рд▓реА рднреНрд░рд╛рдордХ рдЬрд╛рдирдХрд╛рд░реА рдлреИрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдЬрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред

рдЖрдк рд╕рд╣реА рд╣реИрдВ, рдореЗрд░реА рдкрд┐рдЫрд▓реА рдЯрд┐рдкреНрдкрдгреА рджреЗрдЦреЗрдВред

рдЖрдкрдиреЗ рдПрдХ рдРрд╕рд╛ рдорд╛рдирджрдВрдб рдмрдирд╛рдпрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдпрд╣ рдХрд╛рд░рдХ рд╣реИред рдпрд╣ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рд░ рдПрдХ рдШрдЯрдХ рдЗрд╕ рдХрдореА рдХреЛ рджрд┐рдЦрд╛рдПрдЧрд╛ред рдХреГрдкрдпрд╛ рдЗрд╕ рднреНрд░рд╛рдордХ рдЬрд╛рдирдХрд╛рд░реА рд╕реЗ рдмрд╣реБрдд рдЖрд╕рд╛рдиреА рд╕реЗ рдлреИрд▓рдиреЗ рд╡рд╛рд▓реА рднреНрд░рд╛рдордХ рдЬрд╛рдирдХрд╛рд░реА рдлреИрд▓рдиреЗ рдХреЗ рдмрд╛рдж рд╕реЗ рдирд┐рд╖реНрдХрд░реНрд╖ рдкрд░ рдЬрд╛рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред

Devtools рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореИрдВрдиреЗ рдореЗрдХ рд╕рд┐рдЯрд▓реНрд╕ рдХреЗ рд╕рд╛рде рдорд╛рдЙрдВрдЯ рдХреЗ рд▓рд┐рдП рднрд╛рд╡рдирд╛ рдмрдирд╛рдо 120ms рдХреЗ рд╕рд╛рде рдорд╛рдЙрдВрдЯ рдХреЗ рд▓рд┐рдП 140ms рджреЗрдЦрд╛ред

рдореИрдВ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЛ рдирд╡реАрдиреАрдХреГрдд рдХрд┐рдпрд╛ рд╣реИ actualDuration рдХреЗ рдмрдЬрд╛рдп baseDuration , рдЗрд╕рд▓рд┐рдП рд╣рдо рдЕрдм рдХреНрдпрд╛ DevTools рдкреНрд░реЛрдлрд╛рдЗрд▓рд░ рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреЗ рд╕рд╛рде рдФрд░ рдЕрдзрд┐рдХ рдЗрдирд▓рд╛рдЗрди рдореВрд▓реНрдпреЛрдВ рдХреЛ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред baseDuration рд╕рдВрд╕реНрдорд░рдг рдХреЗ рдмрд┐рдирд╛ рд╕рдордп рдХреЛ рдорд╛рдкрддрд╛ рд╣реИ, рдЬрдмрдХрд┐ actualDuration рд╡рд┐рдкрд░реАрдд рд╣реИред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗрд╡рд▓ рд░реЗрдВрдбрд░рд░ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЕрдм рдореИрдВ рд░реЗрдВрдбрд░реНрд╕ рдХреЗ рд▓рд┐рдП makeStyles 6-8x рддреЗрдЬрд╝реА рд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╢рд┐рдВрдЧ / рдореЗрдореЛрдЗрдЬрд╝реЗрд╢рди рдмреЗрд╣рддрд░ рд╣реИ? рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореБрдЭреЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛ рд░рд╣реЗ рдорд╛рди рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдЕрджреНрдпрддрди рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

Screenshot 2020-09-22 092415
Screenshot 2020-09-22 092514

@satazor рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЖрдкрдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рд╕рдордХрдХреНрд╖ рд╣реИрдВред рд╣рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рдЖрдк рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЕрдВрддрд░ рдХреЛ рдХрдо рдХрд░реЗрдЧрд╛:

  • рдмрдврд╝рддреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдШрдЯрдХреЛрдВ рдореЗрдВ рдПрдХ рд▓рд╛рдЧрдд рд╣реЛрддреА рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рдЙрдирдореЗрдВ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рдкреНрд░рддрд┐рдкрд╛рджрди рдХрд░рддреЗ рд╣реИрдВред makeStyles рд╕реАрдзреЗ div рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдЬрдмрдХрд┐ рднрд╛рд╡рдирд╛ / sc рдирдП рдШрдЯрдХ рдмрдирд╛рддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдЯреЗрдмрд▓ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдореЗрдВ, рдореИрдВрдиреЗ рдЕрдиреБрднрд╡ рдХрд┐рдпрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЬреЛрдбрд╝ рдШрдЯрдХ рдмреЗрд╕рд▓рд╛рдЗрди рд░реЗрдВрдбрд░рд┐рдВрдЧ рдЯрд╛рдЗрдо рдХреЛ рдЬреЛрдбрд╝рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдШрдЯрдХреЛрдВ рдХреЗ 3 рд╕реНрддрд░ => x3 (рдпрд╛ <MenuItem> <li> рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ x10 рдзреАрдорд╛ рдХреНрдпреЛрдВ рд╣реИ)ред
  • MakeStyles рдХреЗ рд╕рд╛рде рдЖрдкрдХрд╛ рдбреЗрдореЛ рдПрдХ рдПрдХрд▓ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдмрдирд╛рддрд╛ рд╣реИ, рднрд╛рд╡рдирд╛ / sc рдирд╣реАрдВред рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдб рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдЖрдЗрдЯрдо рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХрд▓ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдореБрдЦреНрдп рдореЗрдХ рд╕реНрдЯрд╛рдЗрд▓ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдХреЛ рдПрдХ рд╕реЗ рдЕрдзрд┐рдХ, рдПрдХ рдЖрдЗрдЯрдо рдореЗрдВ рддреЛрдбрд╝рдирд╛ред

рджрд░рдЕрд╕рд▓, @oliviertassinari рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рднрд╛рд╡рдирд╛рдПрдВ / рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде рдЖрдЧреЗ рдмрдврд╝рдиреЗ рд╡рд╛рд▓рд╛ рдкреНрд░рджрд░реНрд╢рди 1.5x-2x рдХрд╛рд░рдХ рдЕрдзрд┐рдХрддрдо рдореЗрдВ рд╕рд░рд▓ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рднреА рдЕрдзрд┐рдХ рд╣реИ, рдЬреИрд╕реЗ Typography , рдЬреЛ рдореИрдВрдиреЗ рдпрд╣рд╛рдВ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ: https://codesandbox.io/ рдПрд╕ / рд╕реАрдПрд╕рдПрд╕-рдЗрди-js-рддреБрд▓рдирд╛-рдХрд╛рдВрдЯреЗрджрд╛рд░-lr3sr? рдлрд╝рд╛рдЗрд▓ = / src / рдШрдЯрдХреЛрдВ / EmotionTypography.jsред

рдкреНрд░реЛрдбрдХреНрд╢рди рдмрд┐рд▓реНрдб рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ: https :

makeStyles 1.5-2x рдорд╛рдЙрдВрдЯ рдкрд░ рддреЗрдЬрд╝ рдФрд░ 3-4x рддреЗрдЬрд╝реА рд╕реЗ рд░реЗрдВрдбрд░реЗрдВрдбрд░реНрд╕ рдкрд░ рд╣реИред рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рдкрд░ рдирдЬрд╝рд░ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд┐рдЪрд▓рди рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЫреЛрдЯрд╛ рд╣реЛрдЧрд╛ред

рдЗрд╕рд▓рд┐рдП, рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ, рдореИрдВ рдЕрдм рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ

@mnajdova рдпрд╣рд╛рдВ рд▓рд┐рд╕реНрдЯ рдЯреЗрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдбрдХреНрд╢рди рдмрд┐рд▓реНрдб: https://csb-lr3sr-3zi42510w.vercel.app/?compords=1000 , рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рдкреАрдЖрд░ рдХреА рдХреЙрдкреА рджреА рдЧрдИ рд╣реИред рдХреЛрдбреИрдВрдбрдмреЙрдХреНрд╕ рд▓рд┐рдВрдХ: https://codesandbox.io/s/css-in-js-comparison-forked-6s4nl

makeStyles рдорд╛рдЙрдВрдЯ рдкрд░ 1.7x рддреЗрдЬрд╝реА рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ, рдФрд░ рд░реЗрдВрдбрд░рд░ рдкрд░ 2.2x рддреЗрдЬрд╝ред рдореБрдЭреЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛ рд░рд╣реЗ 10% рдЕрдВрддрд░ рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред рдХреНрдпрд╛ рдореБрдЭрд╕реЗ рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рд░рд╣реА рд╣реИ?

@satazor рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ, рдЗрд╕реЗ рдПрдХ рд╕рд╛рде рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдореИрдВрдиреЗ рдЗрд╕ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ # 22435 рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рд╣реИ

import Slider from '@material-ui/core/Slider';

рдмрдирд╛рдо (рднрд╛рд╡рдирд╛)ред

import SliderStyled from '@material-ui/lab/SliderStyled';

рдмрдирд╛рдо (рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ)ред

import SliderStyled from '@material-ui/lab/SliderStyled';

Capture dтАЩe╠Бcran 2020-09-23 a╠А 17 23 23
Capture dтАЩe╠Бcran 2020-09-23 a╠А 17 25 07
Capture dтАЩe╠Бcran 2020-09-23 a╠А 17 23 54

рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдпрд╣ рдмрддрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рдпрд╣ рдзреАрдорд╛ рдХреНрдпреЛрдВ рд╣реИред рд╢реИрд▓рд┐рдпреЛрдВ рдкрд░ рдЕрдбрд╝рдЪрди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред рдФрд░ рдорди рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рджреЗрд╡ рд╡рд┐рдзрд╛ рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рд╣реИ run!

рдореИрдВрдиреЗ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЗ WIP рднрд╛рд╡рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдирдП рдкреГрд╖реНрда рдЬреЛрдбрд╝реЗ рд╣реИрдВ:

рдПрдХ рдмрд╛рд░ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдВрдХрдбрд╝реЗ https://github.com/mui-org/material-ui/issues/22342#issuecomment -697540546 рдХреЗ рд╕рдорд╛рди рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╣ X1.6 рдзреАрдореА (рд▓реЗрдХрд┐рди CSS рдкреВрд░реА рддрд░рд╣ рдЧрддрд┐рд╢реАрд▓ рд╣реИ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде WIP рднрд╛рд╡рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рдЦреЗрд▓ рд╕рдХрддреЗ рд╣реИрдВ:

Capture dтАЩe╠Бcran 2020-09-23 a╠А 18 56 01

  • рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХ : https://codesandbox.io/s/preact-material-ui-test-forked-lum1y?file=/src/index.tsx @mnajdova sc рдХреЗ рд▓рд┐рдП, рдореБрдЭреЗ рдкрд╛рд░реНрд╕рд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдерд╛, рдореИрдВ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрд╛ред CRA рдХрд╛ рдЦрд╛рдХрд╛ред

Capture dтАЩe╠Бcran 2020-09-23 a╠А 18 55 48

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди JSS рд╕рдВрд╕реНрдХрд░рдг X1.1 рдХреЛ рддреЗрдЬреА рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп withStyles рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: # 15023ред

рдардЧ рдореЛрдб рдореЗрдВ

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдХреИрд╕реЗ makeStyles рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм рдЖрдк рд╕рд┐рд░реНрдл рд╕реНрдереИрддрд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдХрд┐рддрдирд╛ рддреЗрдЬ рд╣реЛрддрд╛ рд╣реИ:

  1. рдкреНрд░рддреНрдпреЗрдХ рдорд╛рдЙрдВрдЯ рдкрд░, attach рдХреЛ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  2. рдпрджрд┐ рдпрд╣ рдЙрд╕ рдШрдЯрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкрд╣рд▓рд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ, рддреЛ stylesCreator.create рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ fn рдХреЛ makeStyles(fn) рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИред
  3. рд╣рд░ рджреВрд╕рд░реЗ рдЙрджрд╛рд╣рд░рдг рдкрд░, stylesCreator.create рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд░реЗрдлрд░реА рд╕рдВрдЦреНрдпрд╛ 0 рд╣реИред

рд░реЗрдВрдбрд░рд░реНрд╕ рдХреЗ рд▓рд┐рдП:

  1. рдкреНрд░рддреНрдпреЗрдХ рд░реЗрдВрдбрд░рд░ рдкрд░, attach рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  2. рдмрд╛рдж рдореЗрдВ, stylesCreator.create рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ ref count> 0 рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рднреА рдХрд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрджрд┐ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЦреЗрд▓рдиреЗ рдореЗрдВ рд╣реИ, рддреЛ рд╢реАрдЯ рдХреЛ рд╣рд░ рдорд╛рдЙрдВрдЯ рдФрд░ рд░реЗрдВрдбрд░ рдкрд░ рдпрд╣рд╛рдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛрдЧрд╛ред

рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, styled-components рдФрд░ emotion рд╣рд░ рдШрдЯрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╣рдорд╛рд░реЗ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдзрд┐рдХ рд╕реАрдкреАрдпреВ рд╕рд╛рдЗрдХрд┐рд▓ рдФрд░ рдореЗрдореЛрд░реА рдмреИрдХрдкреНрд░реЗрд╢рд░ рд╣реЛрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рд╡реЗ рдХрд┐рд╕реА рддрд░рд╣ рдкреНрд░реЙрдкреНрд╕ рдХреЙрдореНрдмрд┐рдиреЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдорд▓реНрдЯреА рдореЗрдореЛ рдХреИрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рди рд▓реЗрдВрдЧреЗ рдХрд┐ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдлрдВрдХреНрд╢рди рд╢реБрджреНрдз рд╣реИрдВ, рдЬреЛ рд╢рд╛рдпрдж рдРрд╕рд╛ рди рд╣реЛ, рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:

     const someContext = useContext(FooContext);

    return <div css={ { paddingTop: someContext.padding(1) } }>;

рдпрджрд┐ рдореЗрд░реА рдзрд╛рд░рдгрд╛рдПрдВ рд╕рд╣реА рд╣реИрдВ, рддреЛ рд╕реНрдереИрддрд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП makeStyles рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рд╕реНрддрд░ рддрдХ рдкрд╣реБрдВрдЪрдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реЛрдЧрд╛, рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдкреАрдЖрдИ рдХреЛ рдХреИрд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ styled рдпрд╛ css API рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред

рдореБрдЭреЗ рдХреБрдЫ рд╕рдВрднрд╛рд╡рд┐рдд рджрд┐рд╢рд╛рдПрдБ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╣рдо рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

  • рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╡рд┐рд╡рд░рдг рдореЗрдВ, рд╣рдордиреЗ рдХреЗрд╡рд▓ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХрд┐рдпрд╛ рд╣реИред рд╣рдо рд╕реНрдереИрддрд┐рдХ рдорд╛рдорд▓реЗ (рдХреНрдпрд╛ v4 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ) рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рд╕реНрдереИрддрд┐рдХ рдФрд░ рдЧрддрд┐рд╢реАрд▓ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдорд▓рд╛ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рд╣рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╢реИрд▓реА рдЗрдВрдЬрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рджрд╛рдпрд░реЗ рдХреЛ рд╕рдордЭрдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред
  • рд╣рдо рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЕрдбрд╝рдЪрди рдХрд╣рд╛рдВ рд╣реИред рд╣рдо рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ jss рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдбреЙрдкреНрдЯрд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИ, рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдкреНрд░рджрд░реНрд╢рди рдмреЗрд╣рддрд░ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдпрд╣ рдЬреЗрдПрд╕рдПрд╕ рдХреЗ рдЧрддрд┐рд╢реАрд▓ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЦрд░рд╛рдм рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рд╣рдо рдЗрд╕рдХреА рддреБрд▓рдирд╛ рд╕реНрдереИрддрд┐рдХ рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд┐рдирд╛ рд░реБрдХреЗ рдЕрдореВрд░реНрддрддрд╛ рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реЛред
  • рд╣рдо рдордВрджреА рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЕрдирд▓реЙрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦрд░реНрдЪ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рдореВрд▓реНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрд╕реНрдерд┐рд░ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдПрдХ рд▓рдВрдмреА рд╕реВрдЪреА рдкреНрд░рд╕реНрддреБрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ рдпрд╛ рдиреЗрд╕реНрдЯреЗрдб рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░реЗрдВрдЧреЗред
    рднрд╛рд╡рдирд╛рдУрдВ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдиреЗ рдЙрджреНрдпреЛрдЧ рджреНрд╡рд╛рд░рд╛ рд▓рдЪреАрд▓рд╛рдкрди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдФрд░ рддреЗрдЬреА рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд╛рдмрд┐рдд рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕реА рддрд░рд╣ рд░рд┐рдПрдХреНрдЯ рдХрд┐рдпрд╛ред

рдЕрдЧрд░ рдХрд┐рд╕реА рддрд░рд╣ emotion useCss рд╣реБрдХ рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ https://github.com/emotion-js/emotion/issues/1321 рдФрд░ https://github.com/emotion- рдореЗрдВ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ makeStyles API рдФрд░ рдЗрд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, "рд╕реАрдПрд╕рдПрд╕ рд╕реАрдПрд╕рдПрд╕" рдХреЗ рд▓рд╛рдн рдХреЛ рдмрдирд╛рдП рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдо рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдЬрдЧрд╣ рд╕реНрдЯреЗрдЯрд┐рдХ рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд░рд╣реЗрдВрдЧреЗ, рдЬреЛ рдЗрддрдирд╛ "рд╕рд╛рдл" рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣реА рд╣рдо рдкрд╣рд▓реЗ рд╕реЗ рд╣реА v4 рдореЗрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рджрд░рдЕрд╕рд▓, ClassNames API рдХреЗ рд╕рд╛рде, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрднреА withStyles рдХрд╛ рдПрдХ рдкреЛрд░реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╕реНрдЯреИрдЯрд┐рдХ CSS perf рдХреЗ рд▓рд╛рднреЛрдВ рдФрд░ рднрд╛рд╡рдирд╛рдПрдВ рд╡рд╛рд▓реЗ рдЧрддрд┐рд╢реАрд▓ CSS рдХреЗ рдЕрдЪреНрдЫреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрдирд╛рдП рд░рдЦреЗрдЧрд╛ред рдпрджрд┐ const css = useCss() рдЕрд╕реНрддрд┐рддреНрд╡ рдореЗрдВ рд╣реИ, рддреЛ рдпрд╣ useStyles API рдкреЛрд░реНрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╕рд░рд▓ рд╣реЛрдЧрд╛ред

withStyles + makeStyles API рд░рдЦрдиреЗ рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн рдЬреЛ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:

  • рдкреНрд░рд╡рд╛рд╕рди рдЬреЛ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдХрд░рдирд╛ рд╣реИ рд╡рд╣ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреЛрдИ рднреА рдирд╣реАрдВ рд╣реИ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдЙрди 2 рдХрд╛рд░реНрдпреЛрдВ рдХрд╛ рдкреЛрд░реНрдЯ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
  • рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд╛рдордЧреНрд░реА UI рдХреЗ рдмрд╛рд╣рд░ withStyles рдФрд░ makeStyles рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдЙрдиреНрд╣реЗрдВ рдЧрддрд┐рд╢реАрд▓ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рд▓рд╛рдн рдореБрдлреНрдд рдореЗрдВ рдорд┐рд▓реЗрдЧрд╛ред
  • classes + CSS API рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред styled рд╣рдореЗрдВ рд╣рд╛рде рд╕реЗ рдпрд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рд╡реИрд╢реНрд╡рд┐рдХ className s рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
  • рдЗрд╕ рд░рдгрдиреАрддрд┐ рдореЗрдВ, useCss рдХреЗ рдмрдЬрд╛рдп, рдЬреЗ рдПрд╕ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдПрдбрд╛рдкреНрдЯрд░ рд╕рдорд╛рд░реЛрд╣ рд╣реИ styled ред
  • рдЬреЗрдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдореЗрдВ рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЙрдиреНрд╣реЗрдВ рдПрдХ рдпреВрд╕реЗрдЬрд╕реА рд╣реБрдХ рдпрд╛ рд╕рдорд╛рди рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рд╣рдо styled рддрд░рд╣ рдЙрдиреНрд╣реЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП webpack / babel aliasing рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗред

рд╣рдордиреЗ https://twitter.com/olivtassinari/status/1309247827839680512 рдкрд░ рдЖрдЧреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЗ рдХреА рдЦреЛрдЬ рдХреА рд╣реИ

  • рджреЗрд╢реА: 7.71ms
  • v5 рдЕрд╕реНрдерд┐рд░: 20.89ms
  • v4: 29.93ms
  • v5: 37.37ms
  • atd: 53.48ms
  • рдЪрдХреНрд░: ремрек.ремms рдореА

https://codesandbox.io/s/slider-comparison-forked-jziv6?file=/src/App.jsтАж

рдЦреЗрдж рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЗрддрдиреА рджреЗрд░ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдереЛрдбрд╝рд╛ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реВрдВ рдХрд┐ рдЖрдк рд╕реНрдЯрд╛рдЗрд▓-рдЬреЗрдПрдХреНрд╕ рдкрд░ рдмрд╛рд░реАрдХреА рд╕реЗ рдирд╣реАрдВ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ

рдЙрдирдХреА рд╕реВрдЪреА рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддреА рд╣реИ:

  • рд╕рд░реНрд╡рд░ рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
  • рдкреВрд░реНрдг рд╕реАрдПрд╕рдПрд╕ рд╕рдорд░реНрдерди, рд╕рддреНрддрд╛ рдореЗрдВ рдХреЛрдИ рдЯреНрд░реЗрдбрдСрдлрд╝ рдирд╣реАрдВ
  • рд╕рд┐рд░реНрдл 3kb рдХрд╛ рд░рдирдЯрд╛рдЗрдо рдЖрдХрд╛рд░ (gzipped, 12kb рд╕реЗ)
  • рдкреВрд░реНрдг рдЕрд▓рдЧрд╛рд╡: рдЪрдпрдирдХрд░реНрддрд╛, рдПрдирд┐рдореЗрд╢рди, рдХреАрдлреНрд░реЗрдо
  • рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реАрдПрд╕рдПрд╕ рд╡рд┐рдХреНрд░реЗрддрд╛ рдЙрдкрд╕рд░реНрдЧ
  • рдмрд╣реБрдд рддреЗрдЬ, рдиреНрдпреВрдирддрдо рдФрд░ рдХреБрд╢рд▓ рд╡рд╛рд╖реНрдкреАрдХрд░рдг (рдиреАрдЪреЗ рджреЗрдЦреЗрдВ)
  • рд╕рд░реНрд╡рд░-рд░реЗрдВрдбрд░рд┐рдВрдЧ рди рдХрд░рдиреЗ рдкрд░ рдЙрдЪреНрдЪ-рдкреНрд░рджрд░реНрд╢рди рд░рдирдЯрд╛рдЗрдо-рд╕реАрдПрд╕рдПрд╕-рдЗрдВрдЬреЗрдХреНрд╢рди
  • рднрд╡рд┐рд╖реНрдп-рдкреНрд░реВрдл: рд╕рд░реНрд╡рд░-рд░реЗрдВрдбрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп "рд╢реИрдбреЛ рд╕реАрдПрд╕рдПрд╕" рдХреЗ рдмрд░рд╛рдмрд░
  • рд╕реНрд░реЛрдд рдорд╛рдирдЪрд┐рддреНрд░ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ
  • рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдФрд░ рд╡рд┐рд╖рдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВ
  • рд╕реАрдПрд╕рдПрд╕ Preprocessing рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ

рдореИрдВ рдЗрд╕ рддрдереНрдп рдкрд░ рдзреНрдпрд╛рди рджреВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд▓рдЧрднрдЧ рдПрдХ рдЫрд╛рдпрд╛ рд╕реАрдПрд╕рдПрд╕ рдорд╛рдирдХ рдПрдкреАрдЖрдИ рд╣реИ ред рдЗрд╕рд▓рд┐рдП jsx рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд╣рдЯрд╛рдХрд░ рдЖрдк рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╡реЗрдм рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд░рдордг рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рд╣реИрдВ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рд╛рдорд╛рдиреНрдп рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ BTW рдореЗрдВ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд╣рд╛рдВ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдореИрдВ рд╕рд┐рд░реНрдл рдпрд╣ рдмрддрд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдХреБрдЫ рд╕рд╛рд▓ рдкрд╣рд▓реЗ рдлреНрд▓реИрд╢ рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рдерд╛ред
рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдВрдд рдореЗрдВ рд╡реЗрдм рдорд╛рдирдХ рдЕрдиреБрд░реВрдк рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреЗ рдХрд╛рд░рдг рд╕реВрдЦ рдЧрдпрд╛, рдФрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рдПрд╕рд╡реАрдЬреА рд╣реИрдВред
рдмрд╕ рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд▓рд┐рдП рдПрд╕рд╡реАрдЬреА рдорд╛рдирдХ рддрдм рдореМрдЬреВрдж рдерд╛ рдЬрдм рдлреНрд▓реИрд╢ рдЙрджреНрдпреЛрдЧ рдкрд░ рд╢рд╛рд╕рди рдХрд░ рд░рд╣рд╛ рдерд╛ред
рдореИрдВ рд╕рд┐рд░реНрдл рдРрддрд┐рд╣рд╛рд╕рд┐рдХ рдШрдЯрдирд╛рдУрдВ рдХреЛ рдЕрдЪреНрдЫреЗ рдкрд╛рдареЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдФрд░ рдкреИрдЯрд░реНрди рдХреЛ рджрд░реНрд╢рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рд▓реЛрдХрдкреНрд░рд┐рдпрддрд╛ рдмреБрд▓реЗрдЯрдкреНрд░реВрдл рдореЗрдВрдЯреЗрдиреЗрдВрд╕ рдФрд░ рдлреНрдпреВрдЪрд░ рдкреНрд░реВрдл рд╣реЛрдиреЗ рдХрд╛ рдЖрдЦрд┐рд░реА рд╕рдВрдХреЗрддрдХ рд╣реИред

@mifrej рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЗрд╕рдХреЗ рд╕рд╛рде рдПрдХ рдмреБрд░рд╛ рдЕрдиреБрднрд╡ рдерд╛: https://github.com/vercel/styled-jsx/issues/142ред

рд╣рдордиреЗ https://twitter.com/olivtassinari/status/1309247827839680512 рдкрд░ рдЖрдЧреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЗ рдХреА рдЦреЛрдЬ рдХреА рд╣реИ

  • рджреЗрд╢реА: 7.71ms
  • v5 рдЕрд╕реНрдерд┐рд░: 20.89ms
  • v4: 29.93ms
  • v5: 37.37ms
  • atd: 53.48ms
  • рдЪрдХреНрд░: ремрек.ремms рдореА

https://codesandbox.io/s/slider-comparison-forked-jziv6?file=/src/App.jsтАж

рдХреНрдпрд╛ рдЖрдкрдиреЗ рднрд╛рд╡рдирд╛ / рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмреИрдмрд▓ рдкреНрд▓рдЧ рдЗрди рдХреА рдХреЛрд╢рд┐рд╢ рдХреА? рдХреНрдпрд╛ рдЗрд╕рд╕реЗ рдЯрд╛рдЗрдорд┐рдВрдЧ рдкрд░ рдлрд░реНрдХ рдкрдбрд╝рд╛?

JSS рд╕реЗ рдХреНрдпрд╛ рдкрд░рд┐рд╡рд░реНрддрди рдореМрдЬреВрджрд╛ MUI рдШрдЯрдХреЛрдВ рдкрд░ рдЙрдкрд▓рдмреНрдз classes рдкреНрд░реЛрдк рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛? V5 рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЙрди рдореМрдЬреВрджрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХреИрд╕рд╛ рд▓рдЧреЗрдЧрд╛ рдЬреЛ рдЗрд╕ рдкреНрд░реЛрдк рдХрд╛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░ рд▓рд╛рдн рдЙрдард╛рддреЗ рд╣реИрдВ?

рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЛрдЧреЛрдВ рдХреЛ рдХрд▓реНрдкрдирд╛ рдХрд░рддреЗ рд╣реИрдВ: https://next.material-ui.com/compenders/slider-styled/#unstyled -slider рдХрдХреНрд╖рд╛рдПрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдШрдЯрдХ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрд▓реЙрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╡рд░реНрдЧ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред рдЖрдк рдЕрдиреБрдХреВрд▓рди рдЙрджрд╛рд╣рд░рдг рдкрд░ рднреА рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ: https://next.material-ui.com/compenders/slider-styled/#customized -sliders

рдПрдХ рдлрд╝рд╛рдпрджреЗ рдХреЗ рддреМрд░ рдкрд░ рдЖрдк рдмрд╕ рдкреНрд░реЙрдкрд░ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдбрд╛рдпрдиреЗрдорд┐рдХ рд╕реНрдЯрд╛рдЗрд▓ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЛрдЧреЛрдВ рдХреЛ рдХрд▓реНрдкрдирд╛ рдХрд░рддреЗ рд╣реИрдВ: https://next.material-ui.com/compenders/slider-styled/#unstyled -slider рдХрдХреНрд╖рд╛рдПрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдШрдЯрдХ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрд▓реЙрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╡рд░реНрдЧ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред рдЖрдк рдЕрдиреБрдХреВрд▓рди рдЙрджрд╛рд╣рд░рдг рдкрд░ рднреА рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ: https://next.material-ui.com/compenders/slider-styled/#customized -sliders

рдПрдХ рдлрд╝рд╛рдпрджреЗ рдХреЗ рддреМрд░ рдкрд░ рдЖрдк рдмрд╕ рдкреНрд░реЙрдкрд░ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдбрд╛рдпрдиреЗрдорд┐рдХ рд╕реНрдЯрд╛рдЗрд▓ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВ рдЗрд╕ рдПрдкреАрдЖрдИ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдБ! рдмрд╣реБрдд рдмрд╣реБрдд рд╕реНрд╡рд╛рдЧрддрдпреЛрдЧреНрдп рдкрд░рд┐рд╡рд░реНрддрди рд╣реИ, рдФрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓ рдЗрдВрдЬрди рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдирд╛ рд▓рдЧрддрд╛ рд╣реИред

v5 , рдЕрдЧрд░ рдореБрдЭреЗ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдпрд╛рдж рд╣реИ, рддреЛ JSS рд╕рдВрдХрд▓рдХ рдЙрди рд╡рд░реНрдЧ рдирд╛рдореЛрдВ рдХреЛ рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░реЗрдЧрд╛ рдФрд░ рдЖрдк рдЙрдиреНрд╣реЗрдВ рд▓рдХреНрд╖рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ? рд▓реЗрдХрд┐рди рдЕрдм рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡реЗ рд▓рдХреНрд╖рд┐рдд рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд╛рдордиреЗ рдЖрдПрдВрдЧреЗ? ЁЯЩМ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реАрдПрд╕рдПрд╕ рдкреВрд░реНрд╡рддрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдереАред рдФрд░ рдЙрди рдЪрд┐рдВрддрд╛рдУрдВ рдХреЛ рдЗрд╕ рдирдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ? рдЗрд╕ рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

@ConAntonakos рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдШрдЯрдХреЛрдВ рдХреЗ рдЕрд╕реНрдерд┐рд░ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рд╡рд╛рд▓реЗ рджреЛрдиреЛрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд▓рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрд┐рд╕ рдХреНрд░рдо рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдирдИ рд╢реИрд▓реА рдЬреАрдд рдЬрд╛рдПрдЧреА, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдЧрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рд╕рдорд╛рди рд╣реИ :)

V5 рд╕реЗ рдкрд╣рд▓реЗ, рдЕрдЧрд░ рдореБрдЭреЗ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдпрд╛рдж рд╣реИ, рддреЛ JSS рдХрдВрдкрд╛рдЗрд▓рд░ рдЙрди рдХреНрд▓рд╛рд╕ рдирд╛рдореЛрдВ рдХреЛ рдорд╕рд▓ рджреЗрдЧрд╛ рдФрд░ рдЖрдк рдордЬрд╝рдмреВрддреА рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдирд┐рд╢рд╛рдирд╛ рдирд╣реАрдВ рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ?

рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЙрдиреНрд╣реЗрдВ v4 рдореЗрдВ рд▓рдХреНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдХрдХреНрд╖рд╛рдПрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдШрдЯрдХ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрд▓реЙрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╡рд░реНрдЧ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред

рдХреНрдпрд╛ рд╡реЗ "рдореВрд▓ рд░реВрдк рд╕реЗ" рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдпрд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рд╣реИрдВ? рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рд╣рдордиреЗ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреБрд░рд╛рдиреЗ рдПрдкреАрдЖрдИ рд░рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рд╣рдордиреЗ рдмреНрд░реЗрдХрд┐рдВрдЧ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдкреБрд░рд╛рдиреЗ рдПрдкреАрдЖрдИ рд░рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИред

рд╣рдордиреЗ рдЙрд╕реА API рдХреЛ theme.components.overrides рд▓рд┐рдП рд░рдЦрдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ - рдЙрд╕реА рддрд░реАрдХреЗ рд╕реЗ рдереАрдо рдХрд╛рд░реНрдп рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдУрд╡рд░рд░рд╛рдЗрдбреНрд╕ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ styled рд╡рд░реНрдЧ рдХреЗ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдЕрдм рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИ, рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ classes рдкреНрд░реЛрдк рдЕрдм рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдм рдФрд░ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдм рдФрд░ рдЕрдзрд┐рдХ рд▓рдЪреАрд▓реЗ рдврдВрдЧ рд╕реЗ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдРрд╕рд╛ рдорд╛рдореВрд▓реА рдореБрджреНрджрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рд╣реИ рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд▓рд┐рдП рдорд╛рдЗрдЧреНрд░реЗрд╢рди рд▓рд╛рдЧрдд рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИред рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкреНрд▓рд╛рди рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИ?

рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрднреА рднреА рдереАрдо рдУрд╡рд░рд░рд╛рдЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдЧрд░ рд╡реЗ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдХреЗрд╡рд▓ рдПрдХ рдиреЗрд╕реНрдЯреЗрдб ThemeProvider рдкрд░ рд▓реЗ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рдЙрди рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреА, рдХреНрдпреЛрдВрдХрд┐ рдЙрди рджреЛрдиреЛрдВ рдХреЗ рдмреАрдЪ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╕рдорд╛рди рд╣реИ (рдпрд╣ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ , рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╡реЗ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдЙрдиреНрдирдпрди рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдПрдХ рд░рд╛рд╕реНрддрд╛ рд╣реИ)

рджреВрд╕рд░реА рдУрд░, рд╣рдо рдЕрднреА рднреА рдЖрд╕рд╛рдиреА рд╕реЗ рдХрдХреНрд╖рд╛рдПрдВ рдкреНрд░реЛрдк рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╣рдо рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХрдХреНрд╖рд╛рдУрдВ + рд╕реНрдЯрд╛рдЗрд▓ рдХрд╛ рд╕рдВрдпреЛрдЬрди рдЙрд╕реА рдШрдЯрдХ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдХрд┐рд╕реА рдХреЛ рдЬреАрддрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреНрдпрд╛ рд╣рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдШрдЯрдХреЛрдВ рдХреЗ рд╕реНрдЯрд╛рдЗрд▓ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рдорд░реНрдерди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдореИрдВ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдпрд╛рдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ - рдореЗрд░реЗ classes рдкреНрд░рд╢реНрди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдПрдХ рдФрд░ рдкреНрд░рд╢реНрдиред "рд╢реБрджреНрдзрддрд╛" рдХреА рдХрд┐рд╕ рддрд░рд╣ рдХреА рдЧрд╛рд░рдВрдЯреА рд╣реЛ рд╕рдХрддреА рд╣реИ?

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рд╕реНрд▓рд╛рдЗрдбрд░ рдХрд╛ рдЙрджрд╛рд╣рд░рдг рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдпрд╛ рд╣реИ:

const StyledSlider = styled(SliderUnstyled)`
  & .MuiSlider-raill {
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    border-radius: 1px;
    background-color: currentColor;
    opacity: 0.38;
  }
)

рдЖрдк рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдореИрдВрдиреЗ рдЧрд▓рддреА рд╕реЗ MuiSlider-rail рдЧрд▓рдд рд╡рд░реНрддрдиреА рдХреА рд╣реИред рд╕рд╛рде рдкрд╣рд▓реЗ classes рд╡рд╣рд╛рдБ рдХреА рддрд░рд╣ рдХреБрдЫ рд╣реЛрдЧрд╛ classes.rail , рдФрд░ рдЕрдЧрд░ рдореИрдВ рд╕рдВрдкрддреНрддрд┐ рдЧрд▓рдд рд╡рд░реНрддрдиреА, рдореИрдВ рдПрдХ рдХреНрд░рдо рдЪреЗрддрд╛рд╡рдиреА рд╣реИ рдХрд┐ рдорд┐рд▓реЗрдЧрд╛ classes.raill рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдереАрдо рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдорд╛рди рдерд╛?

classes API рдХреЗ рдлрд╛рдпрджреЗ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ рд╣реВрдВ:

  1. рд╡реИрд╢реНрд╡рд┐рдХ рд╕реАрдПрд╕рдПрд╕ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рдмрдврд╝рдд рдЬреЛ рдмрдЪреНрдЪреЛрдВ рдХреЗ рдмреАрдЪ рд▓реАрдХ рд╣реЛрддреА рд╣реИ: рдЬреИрд╕реЗ .css-e7ylz8 .MuiTreeItem-group ред рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдШрдЯрдХ рдмрд╛рд▓ рдШрдЯрдХ рдкрд░ рд╢реИрд▓реА рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рди рдХрд┐ рд╡рд╣ рдкреНрд░рднрд╛рд╡ рдЬрд┐рд╕рдХреА рдЖрдк рдЙрдореНрдореАрдж рдХрд░ рд░рд╣реЗ рдереЗ, рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ!)ред рд╢рд╛рдпрдж рд╣рдорд╛рд░реЗ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдареАрдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВрдЧреЗред
  2. рдкреЛрд░реНрдЯрд▓реНрд╕ рдХреЛ рдиреЛ рдмреНрд░реЗрдирд░ рдмрдирд╛рдП: https://material-ui.com/guides/interoperability/#portalsред рдЯреВрд▓рдЯрд┐рдк рд╕реНрдЯрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдкреЙрдкрд░ рдШрдЯрдХ рдХреЛ рд╕реНрдЯрд╛рдЗрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рди рдХрд┐ рд░реВрдЯ рдЬреИрд╕рд╛ рдХрд┐ рд╣рдордиреЗ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рдерд╛ред
  3. $styleRule рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╢реИрд▓реА рдирд┐рдпрдо рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИред
  4. рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд░реНрдЧ рдирд╛рдореЛрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рди componentsProps рдкреНрд░реЛрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИред рд╣рдо рд╡рд░реНрдЧ рдирд╛рдореЛрдВ рдХреЛ рдорд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВред

рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рджреБрдирд┐рдпрд╛ рд╣реИ рдЬрд╣рд╛рдБ рд╣рдо рдХрд░реЗрдВрдЧреЗ:

рдПред рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХ рдХреЗ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде 1. рдФрд░ 3. рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред
рдмреА рдкрд┐рдЫрдбрд╝реЗ рдЕрдиреБрдХреВрд▓рддрд╛ рдХреЗ рд▓рд┐рдП classes API рдХрд╛ рдЦреБрд▓рд╛рд╕рд╛ рдХрд░реЗрдВред
рд╕реАред рдЖрджреЗрд╢ рдореЗрдВ рдПрдХ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдФрд░ рдмреАред рдХрд╛рдо рдХрд░рддреЗ рд╣реБрдП, рд╣рдореЗрдВ рд╕рдорддрд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХрд┐ рдШрдЯрдХ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЖрдВрддрд░рд┐рдХ рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред 1 рд╕реНрдЯрд╛рдЗрд▓ рд░реВрдЯ рдХреЗ рдмрдЬрд╛рдп x рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХред рд▓реЗрдХрд┐рди рдкреВрд░реНрдг рдирд┐рд╣рд┐рддрд╛рд░реНрде рдХреЗ рд╕рд╛рде perfред

рдХреНрдпрд╛ рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?


рдореИрдВрдиреЗ jQuery рдХреЗ UI рдХреЗ classes рдкреНрд░реЛрдк рдХреЗ рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рджреЗрдЦрд╛ рд╣реИред рдореБрдЭреЗ рджреЛ рдореБрджреНрджреЗ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВ: https://bugs.jqueryui.com/ticket/7053 , https://bugs.jqueryui.com/ticket/8928 рдФрд░ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рддрд┐рдмрджреНрдз: https://github.com/jquery/jquery- ui / / c192d4086d9bbaf09d5f870857af30c60a427e22 рдкреНрд░рддрд┐рдмрджреНрдзред

рд╣рдо рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓реЛрдЧреЛрдВ рдХреЛ рдХрд▓реНрдкрдирд╛ рдХрд░рддреЗ рд╣реИрдВ: https://next.material-ui.com/compenders/slider-styled/#unstyled -slider рдХрдХреНрд╖рд╛рдПрдВ рдореВрд▓ рд░реВрдк рд╕реЗ рдШрдЯрдХ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрд▓реЙрдЯ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╡рд░реНрдЧ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВред рдЖрдк рдЕрдиреБрдХреВрд▓рди рдЙрджрд╛рд╣рд░рдг рдкрд░ рднреА рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВ: https://next.material-ui.com/compenders/slider-styled/#customized -sliders

рдПрдХ рдлрд╝рд╛рдпрджреЗ рдХреЗ рддреМрд░ рдкрд░ рдЖрдк рдмрд╕ рдкреНрд░реЙрдкрд░ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрдирдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдбрд╛рдпрдиреЗрдорд┐рдХ рд╕реНрдЯрд╛рдЗрд▓ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╡рд╛рд╣, рдпрд╣ рдЕрдм рддрдХ рдХреА рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИред
рдХрд╕реНрдЯрдорд╛рдЗрдЬреНрдб рдпрд╛ рд╣реЗрдбрд▓реЗрд╕ рдШрдЯрдХреЛрдВ рдХреЛ рдХрд╕реНрдЯрдорд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реЛрдиреЗ рд╡рд╛рд▓рд╛ рд╣реИ (рдореБрдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЖрд▓реЛрдЪрдХреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ)ред
рдпрд╣ рдЗрдореЛ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯреА рд╕реА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореАрдпреВрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрд╢рд┐рд╖реНрдЯ рдкреНрд▓рд╕ рд╣реИред

рдкреБрдирд╢реНрдЪ: рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдХрд┐ рдЕрддреАрдд рдореЗрдВ рдХреБрдЫ рдШрдЯрдХреЛрдВ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рддреЗ рд╣реБрдП рдХреБрдЫ рдХрдард┐рди рд╕рдордп
PS2: рдЖрдкрдиреЗ https://github.com/modulz/stitches рдкрд░ рдПрдХ рдирдЬрд╝рд░

рддреБрдо рдиреЛрдЯрд┐рд╕ рдХрд░реЗрдВрдЧреЗ рдореИрдВ рдЧрд▓рддреА рд╕реЗ MuiSlider-Rail рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ред рдкрд╣рд▓реЗ рдХреА рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╣реЛрддреЗ рдереЗ рдЬреИрд╕реЗ рдХрд┐ classes.rail, рдФрд░ рдЕрдЧрд░ рдореИрдВрдиреЗ рдкреНрд░реЙрдкрд░реНрдЯреА рдХреЛ рдорд┐рд╕ рдХрд┐рдпрд╛, рддреЛ рдореБрдЭреЗ рд░рдирдЯрд╛рдЗрдо рдЪреЗрддрд╛рд╡рдиреА рдорд┐рд▓реЗрдЧреА рдХрд┐ рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдореЗрдВ classes.raill рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИред рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдереАрдо рдХрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдорд╛рди рдерд╛?

@ianschmitz рд╡рд┐рдХрд▓реНрдк рдХреЗ рдЕрд▓рд╛рд╡рд╛ @oliviertassinari рдиреЗ рд╕реНрдЯрд╛рдЗрд▓ рд╡рд╛рд▓реЗ рдШрдЯрдХ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдФрд░ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рдЬреЛ рдЙрди рд╡рд░реНрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдо рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реИрдВред рд╢рд╛рдпрдж рдХреБрдЫ рдЗрд╕ рддрд░рд╣:

import { sliderClasses } from '@material-ui/core/Slider';

const StyledSlider = styled(SliderUnstyled)`
  & .${sliderClasses.rail} {
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    border-radius: 1px;
    background-color: currentColor;
    opacity: 0.38;
  }
)

рдпрд╣ classes.rail рд░рдирдЯрд╛рдЗрдо рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдЧрд▓рдд рд╡рд░реНрддрдиреА рдХреЗ рдЦрд┐рд▓рд╛рдл рдорджрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред

@mnajdova рд╣рдо рдПрдХ рдЕрдиреБрд░рдХреНрд╖рдХ рдкреНрд▓рдЧрдЗрди рдкрд░ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

classes рдкреНрд░реЛрдк рдкрд░ рд╕рдорд░реНрдерди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдордЬрд╝рдмреВрддреА рд╕реЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдХреЛрд░ рдШрдЯрдХ рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рднрд╛рдЧ (рд╕реНрд▓реЙрдЯ) рдХреЗ рд▓рд┐рдП рдШрдЯрдХ рдмрдирд╛рдиреЗ рд╣реЛрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Slider , рд╣рдореЗрдВ рд░реЗрд▓, рдЯреНрд░реИрдХ, рдорд╛рд░реНрдХ, рдорд╛рд░реНрдХ рд▓реЗрдмрд▓, рдЕрдВрдЧреВрдареЗ рдФрд░ рдореВрд▓реНрдп рд▓реЗрдмрд▓ рдХреЗ рд▓рд┐рдП рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрд╣ рд╣рдореЗрдВ рдЙрди рдШрдЯрдХреЛрдВ рдкрд░ рд╕реАрдзреЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛, рдмрдЬрд╛рдп рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдпреЗ рдкрд░рд┐рд╡рд░реНрддрди рдЗрд╕ рдкреАрдЖрд░ рдкрд░ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ - https://github.com/mui-org/material-ui/pull/22893

рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде, рд╣рдордиреЗ рдПрдХ рдХреЛрдбреИрдВрдбрдмреЙрдХреНрд╕ рдмрдирд╛рдпрд╛ рд╣реИ, рдЬреЛ v4, рджреЗрд╢реА рд╕реНрдЯрд╛рдЗрд▓, рдЕрд╕реНрдерд┐рд░, рд╕рд╛рде рд╣реА рджреЛ рдЕрдиреНрдп рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзреА рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ - https://codesandbox.io/s/ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрд╕ рдирдП рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рд╕реНрд▓рд╛рдЗрдбрд░ рдШрдЯрдХ рдХреА рдкреВрд░реНрдгрддрд╛ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЕрдЧрд░ рд╣рдо рдЗрди рдкреВрд░реНрдгрддрд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдХреЗрд╡рд▓ рдПрдХ рдШрдЯрдХ рд╣реЛрдиреЗ рдФрд░ рдЗрд╕рдХреЗ рднрд╛рдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЧреЛрдВ рдХреЗ рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ - https://codesandbox.io/s/slider-comparison-forked-jziv6?file=/rcrc/App.js рд╣рдо рджреЗрдЦреЗрдВрдЧреЗ рдХрд┐ рдкреНрд░рддрд┐ рд╕реНрд▓реЙрдЯ рдореЗрдВ рдШрдЯрдХреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдкрд░ 20% рдкреВрд░реНрдг рдЧрд┐рд░рд╛рд╡рдЯ рд╣реЛрддреА рд╣реИ components

рдЙрддреНрдкрд╛рджрди рд╕рдВрд╕реНрдХрд░рдг:

рд╕рдЪ рдХрд╣реВрдВ рддреЛ рдореИрдВ рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдЗрд╕ рдкрд┐рдЫрдбрд╝реЗрдкрди рдХреЛ рдЬреЛрдбрд╝рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ рдпрд╛ рдирд╣реАрдВред

рдХреНрдпрд╛ classes рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдпреЗ рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдпрд╛ рдХреНрдпрд╛ рдпрд╣ рдЕрдкрдЧреНрд░реЗрдб рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ?
рдХреНрдпрд╛ рд╣рдо рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкрде рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП 20% рдкрд░рдлреЗрдХреНрдЯ рдЧрд┐рд░рд╛рд╡рдЯ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реИрдВ?
рдХреНрдпрд╛ рдХреЛрдИ рдРрд╕рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдореЗрдВ рдЗрди рджреЛрдиреЛрдВ рдХреЛ рдкреВрд░реНрдг рд▓рд╛рдЧрдд рдХрд╛ рднреБрдЧрддрд╛рди рдХрд┐рдП рдмрд┐рдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛?

@ianschmitz @ eps1lon @oliviertassinari рдФрд░ рдЕрдиреНрдп :) рдХреНрдпрд╛ рдЗрд╕ рдкрд░ рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ?

рдЬрдм рддрдХ рд╣рдо рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд╕рд╛рде рд╡рд┐рд╖рдпреЛрдВ рдФрд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рддрдм рддрдХ рдореБрдЭреЗ 20% рддрдХ рдЫреВрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рджрд┐рдХреНрдХрдд рдирд╣реАрдВ рд╣реЛрдЧреА

рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рдЙрддреНрд╕реБрдХ рд╣реВрдВ, рдФрд░ рдореБрдЭреЗ рдорд╛рдл рдХрд░ рджреЛ рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рдбрд┐рдЬрд╝рд╛рдЗрди рд╕рдордЭ рдореЗрдВ рдирд╣реАрдВ рдЖрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди classes JSS рдХреЗ рд▓рд┐рдП рдПрдХ рдПрдкреАрдЖрдИ рдерд╛? рдЕрдЧрд░ рдПрдкреАрдЖрдИ рдбрд┐рдЬрд╛рдЗрди JSS рд╕реЗ рд╕реНрдЯрд╛рдЗрд▓ рдШрдЯрдХреЛрдВ рдореЗрдВ рдмрджрд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдпрд╣ classes рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ?

рдХреНрдпрд╛ рдпреЗ classes рдХреЗ рд╕рдорд░реНрдерди рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдпреЛрдЧ-рдорд╛рдорд▓реЗ рд╣реИрдВ рдпрд╛ рдХреНрдпрд╛ рдпрд╣ рдЕрдкрдЧреНрд░реЗрдб рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ?
рдХреНрдпрд╛ рд╣рдо рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдкрде рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП 20% рдкрд░рдлреЗрдХреНрдЯ рдЧрд┐рд░рд╛рд╡рдЯ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реИрдВ?
рдХреНрдпрд╛ рдХреЛрдИ рдРрд╕рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╣рдореЗрдВ рдЗрди рджреЛрдиреЛрдВ рдХреЛ рдкреВрд░реНрдг рд▓рд╛рдЧрдд рдХрд╛ рднреБрдЧрддрд╛рди рдХрд┐рдП рдмрд┐рдирд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛?

рдорд╛рдлреА рдЕрдЧрд░ рдореИрдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХреБрдЫ рднреА рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди IMO рдХрд╛ рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓рд╛ рдЬреЛ рдореИрдВ рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рд╣рдорд╛рд░реЗ рдСрд░реНрдЧ рдХреЗ рднреАрддрд░ рджреЗрдЦрддрд╛ рд╣реВрдВ рд╡рд╣ рд╣реИ MUI рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЕрдореВрд░реНрддред рд╣рд╛рдБ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ classes "JSS рдХреЗ рд▓рд┐рдП API" рдХреА рддрд░рд╣ @ConAntonakos рдХреЗ рд░реВрдк рдореЗрдВ рдЙрд▓реНрд▓рд┐рдЦрд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЙрдкрднреЛрдХреНрддрд╛ рдХреЗ рд▓рд┐рдП рдпрд╣ рдХреЛрдИ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ рдерд╛ред рдПрдХ рдЙрдкрднреЛрдХреНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдВ рд╡рд░реАрдпрддрд╛ рдХреА рд╕реАрдПрд╕рдПрд╕ рддрдХрдиреАрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ (рдХреНрдпрд╛ рдЖрдЬ classes рд╕рд╛рде рдХреЛрдИ рд╕реАрдорд╛рдПрдВ рд╣реИрдВ?)ред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрдИ рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрддреНрдкрд╛рдж рд╣реИрдВ:

  • рд╡реЗрдирд┐рд▓рд╛ рд╕реАрдПрд╕рдПрд╕ рдлрд╝рд╛рдЗрд▓реЗрдВ
  • рдПрд╕рд╕реАрдПрд╕рдПрд╕
  • рдЬреЗрдПрд╕рдПрд╕

рдЙрди рдЯреАрдореЛрдВ рдХреА рдЬрд░реВрд░рддреЛрдВ рдФрд░ рд╡рд░реАрдпрддрд╛рдУрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ред

рдпрджрд┐ рдЖрдк CSS-in-JS рдХреЗ рдХреБрдЫ рд╕реНрд╡рд╛рдж рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рд╡рд░реНрдЧ рдирд╛рдореЛрдВ рдХрд╛ рдирд┐рд░реНрдпрд╛рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЙрди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ?

рдЖрд░рдИред 20% рдкрд░рд┐рдкреВрд░реНрдг, рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдБ рдХрд┐ рд╕рдВрднрд╡рддрдГ рдПрдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рд╡реНрдпрд╛рдкрд╛рд░ рдмрдВрдж рдирд╣реАрдВ рд╣реИред рджрд┐рди рдХреЗ рдЕрдВрдд рдореЗрдВ рдЖрдк рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд╣ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рд╕рдореБрджрд╛рдп рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реЛред рдмрд╕ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░ рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВ ЁЯШД

рдПрдХ рдЗрдЪреНрдЫрд╛ рдЬреЛ рдореБрдЭреЗ рдХрднреА рдирд╣реАрдВ рдорд┐рд▓реА рдХрд┐ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рд╕рдВрдЧрдд рд╣реЛрдЧреАред рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдЗрди рджрд┐рдиреЛрдВ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рд╣реИрдВ рдФрд░ рдПрдХ рдПрдХреАрдХреГрдд рд╕реНрдЯрд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рд╣реЛрдиреЗ рд╕реЗ рдХреНрд░реЙрд╕ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рд▓рд╛рдн рдорд┐рд▓рддреЗ рд╣реИрдВред рд╣рдордиреЗ рд╡реЗрдм рд╕рд╛рдЗрдб рдкрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдФрд░ рдореВрд▓-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рдкреЗрдкрд░ рдФрд░ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рдПрдкреАрдЖрдИ рдкрд░ рдорд╛рдирдХреАрдХрд░рдг рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░ рджрд┐рдпрд╛ред рдореБрдЭреЗ рдпрд╣ рд╕рдордЭрдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реЛрдЧреА рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдирдпрд╛ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдкрд░ рдПрдХ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ (рдХреБрдЫ / рд╕рднреА) рд╕рд╛рдордЧреНрд░реА рдпреВрдЖрдИ рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛? рдШрдЯрдХреЛрдВ рдореЗрдВ рдХреЛрдИ рднреА рдЦрд┐рдбрд╝рдХреА рд╕рдВрджрд░реНрдн рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрд╡рд░реЛрдзрдХ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рд╕реНрдЯрд╛рдЗрд▓ рдореВрд▓ рд░реВрдк рд╕реЗ рдореВрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрд╣ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ?

@mschipperheyn рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЕрднреА рддрдХ рдПрдХ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧ рдХреНрд╖рдорддрд╛ рдХрд╛ 5% (рд╡рд┐рдХрд╛рд╕ рдХрд╛ 1 рдорд╣реАрдирд╛) рдФрд░ + 50% рдЕрдзрд┐рдХ рдкреНрд░рдпрд╛рд╕ (рдПрдХ рдЕрдиреБрдорд╛рди) рд╣реИред рдЕрд╡рд╕рд░ рд▓рд╛рдЧрдд рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЙрдЪреНрдЪ рд╣реИ рдЗрд╕реЗ (рдИрдУрдг рдХреЗ рдореЙрдбрд▓ рдХреЗ рдмрд╛рд╣рд░) рд╡рд┐рдореБрджреНрд░реАрдХрд░рдг рдХрд░рдиреЗ рдкрд░ рдХреЛрдИ рд╕реНрдкрд╖реНрдЯ рджрд┐рд╢рд╛ рдирд╣реАрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдордирдореБрдЯрд╛рд╡ рджрд░реНрд╢рдХреЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рджреЗрд╢реА-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдЕрдм рдЬрдм v5 рдЕрд▓реНрдлрд╛ рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╣реИ, рддреЛ рдХреНрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рд╣реИ? рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди рдЕрднреА рднреА рдЬреЗрдПрд╕рдПрд╕ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ? рд╣рдордиреЗ JSS рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдкрд░реНрдпрд╛рдкреНрдд рдкреНрд░рджрд░реНрд╢рди рдореБрджреНрджреЛрдВ рдХреЛ рджреЗрдЦрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдПрдХ рдирдП рд╕рдорд╛рдзрд╛рди рдХреА рдЙрддреНрд╕реБрдХрддрд╛ рд╕реЗ рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣реЗ рд╣реИрдВред

@zzzev рдпрд╣ рдПрдХ рдореБрджреНрджрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдПрдХ рдЖрд░рдПрдлрд╕реА (рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд░реЛрдз) рдзрд╛рдЧрд╛ рд╣реИред

рдореИрдВ рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рд╣реВрдВ рдХрд┐ рдЖрдк рдХрд┐рд╕ рдкрд░реНрдпрд╛рдкреНрдд рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдмрд╛рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЬреЗрдПрд╕рдПрд╕ рд╕реЗ рдХреИрд╕реЗ рд╕реБрдзрд╛рд░ рд╣реЛрдЧрд╛ред рдХреНрдпреЛрдВрдХрд┐ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдореИрдВ рдпрд╣ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рдЕрдЧрд░ рдЖрдкрдХреЛ рдкреНрд░рджрд░реНрд╢рди рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИ, рддреЛ рд╢рд╛рдпрдж рдпрд╣ рд╢реИрд▓реА рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рдд, рдПрдХ рд╣реА рдкрд░рд┐рдгрд╛рдо рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рджреВрд╕рд░реЗ рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрдХрд░ рдХрдо рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╢рдХреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдмрд╣реБрдд рдХрдо рд╕реЗ рдХрдо рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдЬреЗрдПрд╕рдПрд╕ рд╕реЗ рднрд╛рд╡рдирд╛ рддрдХ рдХреИрд╕реЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ (рдЬреЛ рдХрд┐ рдЗрд╕ рдереНрд░реЗрдб рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЧрд┐рд░рд╛рд╡рдЯ рдЖрдИ рд╣реИ) рдХреБрдЫ рднреА рд╕реБрдзрд╛рд░ рдХрд░реЗрдЧрд╛ред

рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ рднрд╛рд╡рдирд╛ рд╕реНрдереИрддрд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╛рдореВрд▓реА рд╣рд┐рдЯ рдХрд╛ рдХрд╛рд░рдг рдмрдиреЗрдЧреА, рдФрд░ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдкрд░рд┐рдкреВрд░реНрдг - рд▓реЗрдХрд┐рди рд╢рд╛рдпрдж рдпрд╣ рдмрд┐рд▓реНрдХреБрд▓ рд╕рд╣реА рдирд╣реАрдВ рд╣реИ? рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реА рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдВрдЦреНрдпрд╛рдПрдБ рд╣реИрдВ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХреА рдПрдХ рддрд╕реНрд╡реАрд░ рдореЗрдВ рд╕рдореЗрдЯрдирд╛ рдХрдард┐рди рд╣реИ (рдФрд░ рдЬрд╛рд╣рд┐рд░ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреА рд╕реНрдерд┐рддрд┐ рдкрд░ рдмрд╣реБрдд рдХреБрдЫ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ)ред

рдЬрдм рдЖрдк рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдХреНрдпрд╛ рдЖрдкрдХрд╛ рдорддрд▓рдм рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рд╕реЗ рдмрдЪрдирд╛ рд╣реИ? рдпрд╛ рдХреНрдпрд╛ рдЕрдиреНрдп рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдПрдВ рд╣реИрдВ рдЬрд┐рди рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдкрд╣рд▓реЗ рднрд╛рдЧ рдкрд░ @zzzev рд╕рд╣реА, рджреВрд╕рд░реЗ рдкрд░ рдХрд╛рдлреА рдирд╣реАрдВ рд╣реИ (рдЬрдм рддрдХ рдХрд┐ рдЖрдк рдПрдХ рдЕрдирдВрдд рдкреНрд░рджрд░реНрд╢рди рд▓рд╛рдн рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рдЕрд╕рдорд░реНрдерд┐рдд рд╕реЗ рдирд╣реАрдВ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ)ред

рднрд╛рд╡рдирд╛рдУрдВ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдорд┐рд▓рддрд╛ рд╣реИ, рд╕реНрдереИрддрд┐рдХ рдХреЗ рд▓рд┐рдП рдорд╛рдореВрд▓реА рдзреАрдореЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рдХреАрдордд рдкрд░ред

рдореИрдВ рдЙрд▓рдЭрди рдореЗрдВ рд╣реВрдВ; рд╡рд░реНрддрдорд╛рди / v4 рдореЗрдХ рд╕реНрдЯрд╛рдЗрд▓ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпрд╛рдБ рдирд╣реАрдВ рд╣реИрдВ? рдЬреИрд╕реЗ рдпрд╣ рдкреИрдЯрд░реНрди

рдореИрдВ рдЙрд▓рдЭрди рдореЗрдВ рд╣реВрдВ; рд╡рд░реНрддрдорд╛рди / v4 рдореЗрдХ рд╕реНрдЯрд╛рдЗрд▓ рдореЗрдВ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпрд╛рдБ рдирд╣реАрдВ рд╣реИрдВ? рдЬреИрд╕реЗ рдпрд╣ рдкреИрдЯрд░реНрди

рд╡рд╣рд╛рдБ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдПрдХ рдмрдбрд╝рд╛ рдЬреНрдЮрд╛рдд рдкреВрд░реНрдг рдореБрджреНрджрд╛ рд╣реИред рдореЗрд░реА рдЯреАрдо рдПрдЯреАрдПрдо рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд░рд╣рддреА рд╣реИ

рдореБрдЭреЗ рдмрд╕ рдШрдЯрдХ-рд╢реИрд▓реА рд╕реЗ рдирдлрд░рдд рд╣реИ
jss рдЕрдЪреНрдЫрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдбрд┐рдмрдЧрд┐рдВрдЧ, рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рднреА рдХреБрдЫ рдмрдЧ рдЕрднреА рднреА рд╣рд▓ рдирд╣реАрдВ рд╣реБрдП рд╣реИрдВ рдЬреИрд╕реЗ &:after рдиреЗрд╕реНрдЯреЗрдб

рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓-рд╡реЗрдм рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдкреИрдХреЗрдЬ рдмрд┐рд▓реНрдб-рдЕрдк рд╣реИ
https://www.npmjs.com/package/@material-native-ui/theme -provider

рдореИрдВ `рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╕реЗ (рдпрд╣ рдЖрд░рдПрди рдФрд░ рдЖрд░рдПрдирдбрдмреНрд▓реНрдпреВ рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдмрд┐рд▓реНрдб-рдЕрдк рд╣реИ)

рддреЛ рдХреНрдпрд╛ рд╕рд╛рдордЧреНрд░реА UI v5 рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╢реИрд▓реА рд╕рдорд╛рдзрд╛рди рдкрд░ рдХреЛрдИ рдирд┐рд╖реНрдХрд░реНрд╖ рд╣реИ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSS рд╕реЗ рджреВрд░ рдЬрд╛рдиреЗ рдХрд╛ рдПрдХ рдЗрд░рд╛рджрд╛ рд╣реИ рдЬреЛ @material-ui/styles рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╛ @material-ui/styles styled-components рдмрдЬрд╛рдп

рддреЛ рдХреНрдпрд╛ рд╕рд╛рдордЧреНрд░реА UI v5 рдХреЗ рд╕рд╛рде рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд┐рдд рд╢реИрд▓реА рд╕рдорд╛рдзрд╛рди рдкрд░ рдХреЛрдИ рдирд┐рд╖реНрдХрд░реНрд╖ рд╣реИ? рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ JSS рд╕реЗ рджреВрд░ рдЬрд╛рдиреЗ рдХрд╛ рдПрдХ рдЗрд░рд╛рджрд╛ рд╣реИ рдЬреЛ @ рд╕рд╛рдордЧреНрд░реА-рдЙрдИ / рд╢реИрд▓рд┐рдпреЛрдВ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╛ @ рд╕рд╛рдордЧреНрд░реА-рдЙрдИ / рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдЬреИрд╕реЗ рдЕрдиреНрдп рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛?

@ Matthewkwong2 рд╣рдо рдирдП рд╕реНрдЯрд╛рдЗрд▓ рдЗрдВрдЬрди рдХреЗ рд▓рд┐рдП @material-ui/styles рдкреИрдХреЗрдЬ рдХреЛ рдирд╣реАрдВ рдЕрдкрдирд╛рдПрдВрдЧреЗ, рдпрд╣ jss рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд░рд╣реЗрдЧрд╛ред V5 рдореЗрдВ рдЗрд╕реЗ рдмрд╛рдХреА рдХреЛрдбрдмреЗрд╕ рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рд╣рдо рдЗрд╕реЗ рдирдП рд╕реНрдЯрд╛рдЗрд▓ рдЗрдВрдЬрди рдореЗрдВ рдмрджрд▓рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ v6 рдореЗрдВ рд╣рдЯрд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВред

V5 рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирдИ рдмреАрдЯ рдкреНрд░рдерд╛рдПрдВ рд╣реЛрдВрдЧреА, рдЬреИрд╕реЗ sx рдкреНрд░реЛрдк рдФрд░ styled рдЙрдкрдпреЛрдЧрд┐рддрд╛, рд╣рдо рдЕрднреА рднреА рдЗрд╕ рдкрд░ рдкреНрд░рд▓реЗрдЦрди рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╡рд┐рд╖рдп рдУрд╡рд░рд░рд╛рдЗрдб рдФрд░ рд╡реЗрд░рд┐рдПрдВрдЯ рдЕрднреА рднреА v5 рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

V5 рдХреЗ рд▓рд┐рдП, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕реНрдЯрд╛рдЗрд▓ рд╕реЙрд▓реНрдпреВрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирдИ рдмреАрдЯ рдкреНрд░реИрдХреНрдЯрд┐рд╕ рд╣реЛрдВрдЧреА, рдЬреИрд╕реЗ sx рдкреНрд░реЛрдк рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рдпреВрдЯрд┐рд▓рд┐рдЯреА, рд╣рдо рдЕрднреА рднреА рдЗрд╕рдХреЗ рдЖрд╕-рдкрд╛рд╕ рдХреЗ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреЗрд╢рди рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рд╡рд┐рд╖рдп рдУрд╡рд░рд░рд╛рдЗрдб рдФрд░ рд╡реЗрд░рд┐рдПрдВрдЯ рдЕрднреА рднреА v5 рдореЗрдВ рд╕рдорд░реНрдерд┐рдд рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред

рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рдореИрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рддреЛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдШрдЯрдХреЛрдВ рдХреА рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП, sx рдпрд╛ styled рдмрдЬрд╛рдп makeStyles рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрддреНрд╕рд╛рд╣рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд▓реЗрдХрд┐рди рд╡рд┐рд╖рдп рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ (рдпрд╛рдиреА createMuiTheme )? рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рд╣рд┐рд╕реНрд╕рд╛ JSS рдкрд░ рднреА рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ? рдЕрдм рд╡рд┐рд╖рдп рдмрдирд╛рдиреЗ рдХрд╛ рдЕрдиреБрд╢рдВрд╕рд┐рдд рддрд░реАрдХрд╛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛ (рдпрд╛рдиреА рд╡реИрд╢реНрд╡рд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдореБрдЦреНрдп рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд╕рд╛рде)?

рд╣рдо рдЕрднреА рднреА рдереАрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╕рдВрд░рдЪрдирд╛ рд░рдЦрддреЗ рд╣реИрдВ, рд╣рдо рдмрд╕ рдпрд╣ рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдШрдЯрдХ рдУрд╡рд░рд░рд╛рдЗрдб рдФрд░ рд╡реЗрд░рд┐рдПрдВрдЯ рдХреЗ рд▓рд┐рдП рдореВрд▓реНрдп рднрд╛рд╡рдирд╛ / рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдкрд╛рд▓рди рдХрд░реЗрдВред рдереАрдо рдХреИрд╕реЗ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ, рдЗрд╕рдореЗрдВ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рд╣реИ, рдПрдкреАрдЖрдИ рдмрд┐рд▓реНрдХреБрд▓ рд╕рдорд╛рди рд╣реИ, рдирдП рд╕реНрдЯрд╛рдЗрд▓ рдЗрдВрдЬрди рдХреЗ рд▓рд┐рдП рднреА рд╕рдорд╛рди рдереАрдо рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ @ matthewkwong2 ?

@mschipperheyn рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓ рдЕрднреА рддрдХ рдПрдХ рд▓рдХреНрд╖реНрдп рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЙрдкрдпреЛрдЧ рдХреНрд╖рдорддрд╛ рдХрд╛ 5% (рд╡рд┐рдХрд╛рд╕ рдХрд╛ 1 рдорд╣реАрдирд╛) рдФрд░ + 50% рдЕрдзрд┐рдХ рдкреНрд░рдпрд╛рд╕ (рдПрдХ рдЕрдиреБрдорд╛рди) рд╣реИред рдЕрд╡рд╕рд░ рд▓рд╛рдЧрдд рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдзрд┐рдХ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдордирдореБрдЯрд╛рд╡ рджрд░реНрд╢рдХреЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рджреЗрд╢реА-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдореИрдВ рд╣рдореЗрдВ рд╕реНрдкрд░реНрд╢рд░реЗрдЦрд╛ рдХреЗ рдмрд╣реБрдд рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдирд╣реАрдВ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдпреБрдХреНрддрд┐рдпреЛрдВ рдкрд░ рдЬреЛрд░ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

  • рдЕрддреАрдд рдореЗрдВ рдЬрдм рдЖрд░рдПрди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЗрд╕рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдХрдард┐рди рдЪреАрдЬреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдерд╛ рдордЯреЗрд░рд┐рдпрд▓ рдбрд┐рдЬрд╝рд╛рдЗрдиред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╣ рдПрдХ рдмрдбрд╝рд╛ рдкрд░реНрдпрд╛рдкреНрдд рдореБрджреНрджрд╛ рдерд╛, рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдпрд╣ рддрдп рдХрд░ рд╕рдХрддрд╛ рдерд╛ рдХрд┐ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдмрдирд╛рдиреЗ рдореЗрдВ рдкрд░реЗрд╢рд╛рди рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред рдореИрдВрдиреЗ рд╕реБрдирд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЖрд╢рд╛рдЬрдирдХ рдирдИ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рдмреЗрд╣рддрд░ рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЙрддрдирд╛ рд╣реА рдЖрд╢рд╛рдЬрдирдХ рд╣реИ рдЬрд┐рддрдирд╛ рдХрд┐ рдорд┐рдЙ рдорд┐рдХреНрд╕ рдореЗрдВ рдерд╛ред рд╢рд╛рдпрдж рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░реЗ рд▓рд┐рдП рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдПрдХ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдПрдордпреВрдЖрдИ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реВрдВ рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЖрд░рдПрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрдврд╝рд╛ рд░рд╣рд╛ рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдбреЛрдо рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЕрдВрд╢ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗрдм рдмрд╣реБрдд рдмрдбрд╝рд╛ рд╣реИ рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдбреЛрдо рдЖрдзреБрдирд┐рдХ рд╡реЗрдм рд░реВрдкрд░реЗрдЦрд╛рдУрдВ рдкрд░ рд╣рд╛рд╡реА рд╣реИ ред рднрд▓реЗ рд╣реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛-рдореВрд▓рдХ рдЙрдкрдпреЛрдЧ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХрдо рд╣реЛ, рдлрд┐рд░ рднреА рдПрдХ рдирд┐рд░рдкреЗрдХреНрд╖ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреА рдПрдХ рдЙрдЪрд┐рдд рд╕рдВрдЦреНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ рдЬреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рд╡рд░реНрддрдорд╛рди MUI рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХрд╛ рдПрдХ рдкреЛрд▓ рд╢рд╛рдпрдж npm рдЖрдБрдХрдбрд╝реЛрдВ рд╕реЗ рдмреЗрд╣рддрд░ рдореАрдЯреНрд░рд┐рдХ рд╣реЛрдЧрд╛ред
  • рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рд▓реВрдк рд╕реЗ рдмрд╛рд╣рд░ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдлреНрд▓рдЯрд░ рдХреЛ рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рдЦрд░реАрджрддрд╛ рд╣реВрдВред рдпрд╣ рдпрд╛рддрд╛рдпрд╛рдд рддреБрд▓рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рднреНрд░рдорд┐рдд рдХрд╛рд░рдХреЛрдВ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реИ (рд╕реНрдкрдВрджрди рдирдпрд╛ рд╣реИ рдЗрд╕рд▓рд┐рдП рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЖрд░рдПрди рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ; рдлрд╝реНрд▓рдЯрд░ рдХрд╛ рдкреНрд░рд▓реЗрдЦрди рдЕрдзрд┐рдХ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╣ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░ рд░рд╣рд╛ рд╣реИ; рдЖрд░рдПрди рдХреЗ рдХреБрдЫ рдбреЙрдХ рд░реАрдбрд┐рдВрдЧ рдЯреНрд░реИрдлрд╝рд┐рдХ рднреА рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ; рдПрдХреНрд╕рдкреЛ рдХреЗ рдмрдЬрд╛рдп)ред рдпрд╣ рдХреБрдЫ рд╣рдж рддрдХ рддреНрд░реБрдЯрд┐рдкреВрд░реНрдг Google рд░реБрдЭрд╛рди рддреБрд▓рдирд╛ рдПрдХ рдмреЗрд╣рддрд░ рдЙрдкрд╛рдп рд╣реИ, рдФрд░ рдпрд╣ рдХрд╛рдлреА рд╣рдж рддрдХ рд╕рд╣реА рднреА рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдлрд╝реНрд▓рдЯрд░ рдХреЗ рдкрд╛рд╕ рдХреБрдЫ рдХрдард┐рди рдбреАрд▓ рдмреНрд░реЗрдХрд░ рдереЗ рдФрд░ рдЖрд░рдПрди рдЕрднреА рднреА рдЕрдЧрд▓реА рдмрд╛рд░ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЖрд╢рд╛рдЬрдирдХ рд╣реИ, рдПрдХ рдЧреНрд░рд╛рд╣рдХ рдХрд╣рддрд╛ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдореЛрдмрд╛рдЗрд▓ рдРрдк рдЪрд╛рд╣рд┐рдПред
  • JSS рд░рд┐рдПрдХреНрдЯ рдиреЗрдЯрд┐рд╡ рдХреЗ рд╕рд╛рде MUI рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡рддрдГ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛) рдерд╛ред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЕрднреА рднреА рдХреБрдЫ рдЬрдЯрд┐рд▓ рдХрд╛рд░рдХ рд╣реЛрдВрдЧреЗ, рд▓реЗрдХрд┐рди IMHO рдЗрдореЛрд╢рди рдкрд░ рд╕реНрд╡рд┐рдЪ рдиреЗ рд╕рдВрднрд╡рддрдГ MN рдХреЛ RN рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ рдХреЗ 2/3 рдХреЛ рдЦрддреНрдо рдХрд░ рджрд┐рдпрд╛ рд╣реИред

RN рдореЗрдВ MUI рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ рдХреЗ 2/3 рд╕реНрд╡рд┐рдЪ рдСрдл рдЗрдореЛрд╢рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ рд╣реИ

рд╣рдо рдЖрдкрдХрд╛ POC to рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реИрдВ

рд╣рдо рдЖрдкрдХрд╛ POC to рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реИрдВ

рдЕрдЧрд░ рдореБрдЭреЗ рдореМрдХрд╛ рдорд┐рд▓рд╛ рддреЛ рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдЖрдо рддреМрд░ рдкрд░ рд▓реЛрдЧ рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП POCs рдмрдирд╛рдиреЗ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдЕрдиреБрд░рдХреНрд╖рдХ рдПрдХ рдЙрджрд╛рд╕реАрдирддрд╛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рдЬрдм рд╡рд░реНрддрдорд╛рди рдорд╛рд╣реМрд▓ рд╣реИ рдХрд┐ рдпрд╣ рд╢рд╛рдпрдж рд╕рд┐рд░реНрдл рдЕрдВрдд рдореЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВ рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд░рдПрди рдХреЗ рдореВрд▓реНрдп рдпрд╛ рдЖрд░рдПрди рдХреЗ рдореВрд▓реНрдп рдХреЛ рдЦрд╛рд░рд┐рдЬ рдХрд░рдиреЗ рд╕реЗ рдХреНрдпреЛрдВ рдзрдХреНрдХрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рджреЛ рд╕рд╡рд╛рд▓:

  1. рдХреНрдпрд╛ рдЖрдк HOC рдХреЗ рдмрд┐рдирд╛ рдирдП рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдореИрдВ рдПрдХ рдХреЗ рд▓рд┐рдП рд░рд┐рдПрдХреНрдЯ рд╣реБрдХ рдПрдкреАрдЖрдИ рд╕реЗ рдкреНрдпрд╛рд░ рдХрд░рддрд╛ рд╣реВрдВ, рдЬреЛ рдХрд┐ рдореАрдпреВрдЖрдИ рдХреЗ рдкрд╛рд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣реИ ... рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рдХрд┐ рдЕрдЧрд░ рд╕реНрдЯрд╛рдЗрд▓ рд╕рд┐рдВрдЯреИрдХреНрд╕ рднреА рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рдПрдХ рдПрдЪрдУрд╕реА рд╣реИ рд▓реЗрдХрд┐рди рдпрд╣ рдПрдЪрдУрд╕реА рд╕реЗ рджреВрд░ рдЬрд╛рдиреЗ рдореЗрдВ рдкреНрд░рдпрд╛рд╕реЛрдВ (рд░рд┐рдПрдХреНрдЯ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╣рд░ рдЬрдЧрд╣ рдмрд╣реБрдд рдЬреНрдпрд╛рджрд╛) рдХреЛ рд╣рд░рд╛ рджреЗрдЧрд╛ред
  2. рдХреНрдпрд╛ classes рдкреНрд░реЛрдк рдЕрдзрд┐рдХрд╛рдВрд╢ рдШрдЯрдХреЛрдВ рдХрд╛ рдЕрднреА рднреА рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХрд┐рд╕ рд╕реНрдЯрд╛рдЗрд▓ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдкреВрд░реНрдг рд▓рдЪреАрд▓рд╛рдкрди рджреЗ рд╕рдХрддрд╛ рд╣реИ)?

fast-refresh рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХреНрд░рд┐рдПрдЯ-рд░рд┐рдПрдХреНрд╢рди-рдРрдк v4 рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред рдХреНрдпрд╛ рд╣рдореЗрдВ рдПрдХ рдирдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рддреЗрдЬрд╝-рддрд╛рдЬрд╝рд╛ рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдпрд╣ gatsby рдХреЗ рд╕рд╛рде рдмрд╛рд╣рд░ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЬрдм рдореИрдВ import { Link } from '@material-ui/core' рдХрд░реВрдВ рддреЛ рдореБрдЭреЗ рдорд┐рд▓рд╛:

Can't resolve '@emotion/core' in 'node_modules/@material-ui/styled-engine'
File: node_modules/@material-ui/styled-engine/index.js

Can't resolve '@emotion/styled' in '/node_modules/@material-ui/styled-engine'
File: node_modules/@material-ui/styled-engine/index.js

рдЬрдм import Link from '@material-ui/core/Link' рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рдмрджрд▓ рдЧрдпрд╛ред

рдЕрдЧрд░ рдореИрдВ @emotion/styled @emotion/core рд╣реВрдВ:

'' @ рднрд╛рд╡рдирд╛рдУрдВ / рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ 'рдХреЛ' / \ __odules / @ рднрд╛рд╡рдирд╛ / рд╕реНрдЯрд╛рдЗрд▓ / рдбрд┐рд╕реНрдЯ 'рдореЗрдВ рд╣рд▓ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ

рддрдм рдореИрдВ @emotion/react рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред

рдПрдХ рд░рдирдЯрд╛рдЗрдо рддреНрд░реБрдЯрд┐ рдЖрддреА рд╣реИред

Error: The `@emotion/core` package has been renamed to `@emotion/react`. Please import it like this `import { jsx } from '@emotion/react'`.
./node_modules/@emotion/core/dist/emotion-core.cjs.dev.js
node_modules/@emotion/core/dist/emotion-core.cjs.dev.js:3

рд╢рд╛рдорд┐рд▓ рдкреИрдХреЗрдЬ рд╕рдВрд╕реНрдХрд░рдг:

    "@emotion/core": "^11.0.0",
    "@emotion/react": "^11.0.0",
    "@emotion/styled": "^11.0.0",
    "@material-ui/core": "^5.0.0-alpha.15",
    "@material-ui/lab": "^5.0.0-alpha.15",

рднрд╛рд╡рдирд╛ рд╕рдВрдХреБрд▓ рдХреЗ v10 рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ

рдУрд╣ 11 рдЕрдм "рдирд╡реАрдирддрдо" рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдИ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рдУрд╣ 11 рдЕрдм "рдирд╡реАрдирддрдо" рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореБрдИ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдпрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

рд╣рдордиреЗ рдЗрд╕реЗ peerDependencies рдореЗрдВ рд╕рдВрд╕реНрдХрд░рдг рд╢реНрд░реЗрдгрд┐рдпреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдХрд┐рдпрд╛ рд╣реИред рд╣рдордиреЗ рдЗрд╕реЗ рдЗрдВрд╕реНрдЯрд╛рд▓ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЗрд╕реЗ рдЬрд▓реНрдж рд╣реА v11 рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред

рджреЛрд╕реНрддрд╛рдирд╛ рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓реНрдлрд╛ рдФрд░ рдЗрдореЛрд╢рди 11 рд╣реИ рдЬреЛ рдХреБрдЫ рджрд┐рди рдкреБрд░рд╛рдирд╛ рд╣реИред рд╢реБрд░реБрдЖрддреА рджрддреНрддрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрдкрдХреЛ рдХреБрдЫ рдЦреБрд░рджреБрд░реЗ рдХрд┐рдирд╛рд░реЛрдВ рдХреА рдЙрдореНрдореАрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдПред

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░, рдореИрдВ рдпрд╣рд╛рдВ рдирдпрд╛ рд╣реВрдВ, рдФрд░ рдореИрдВ рд╕рд╛рдордЧреНрд░реА-рдпреВрдИ рд╕реАрдПрд╕рдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рджреЗрдЦ рд░рд╣рд╛ рдерд╛ рдФрд░ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЖрдпрд╛ рдерд╛ред
рдмрд╕ рдЗрд╕ рдкрд░ рдЕрдкрдиреЗ 2 рд╕реЗрдВрдЯ рджреЗрддреЗ рд╣реБрдП, рдореИрдВ Linaria https://github.com/callstack/linaria рд╕реБрдЭрд╛рд╡ рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛
рдпрд╣ рдПрдХ рд╢реВрдиреНрдп рд░рдирдЯрд╛рдЗрдо рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд░рд┐рдПрдХреНрд╢рди рдкреНрд░реЙрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдирд┐рд╖реНрдХрд░реНрд╖рдг рдФрд░ рд╕реАрдПрд╕рдПрд╕ рдЪрд░ рд╣реЛрддреЗ рд╣реИрдВред

рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ RFC рдкрд░ рдорджрдж рдХрд░рддрд╛ рд╣реИ R

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

rbozan picture rbozan  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mb-copart picture mb-copart  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

TimoRuetten picture TimoRuetten  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ryanflorence picture ryanflorence  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

finaiized picture finaiized  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ