рдпрд╣ RFC v5 рдореЗрдВ рд╕рд╛рдордЧреНрд░реА-UI рдХреЗ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рд╕рдорд╛рдзрд╛рди рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИред
рдЯреА рдПрд▓: рдбреЙ;
рдЬреЛ рднреА рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдЗрдВрдЬрди рд╣рдо рдЪреБрдирддреЗ рд╣реИрдВ рдЙрд╕рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░рдХреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:
@material-ui/styles
рдХрд╛ рдЖрдВрд╢рд┐рдХ рд╕рдорд░реНрдерди рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рд▓рд┐рдЦ рд░рд╣рд╛ рд╣реВрдВредрдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛ рд╕рдорд░реНрдерди рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддреЛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛:
рдпрд╣рд╛рдВ рдХрдИ рд▓реЛрдХрдкреНрд░рд┐рдп рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд╣реИрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рд╡реА 4 рдХреЗрд╡рд▓ рд╕реНрдерд┐рд░ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдЕрдЪреНрдЫрд╛ рдкреНрд░рджрд░реНрд╢рди рд╣реИ ):
рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░: https://github.com/mnajdova/react-native-web/pull/1
рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП: рдЬреЗрдПрд╕рдПрд╕ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ @ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ / рд╢реИрд▓рд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдкрдЯреЗ), рд╕реНрдЯрд╛рдЗрд▓рд▓реЗрдЯ, рдФрд░ рдлреЗрд▓рд╛ред рдпрд╣ рд╣рдореЗрдВ рдЫреЛрдбрд╝ рджреЗрдЧрд╛:
рдЦреБрд▓реЗ рдореБрджреНрджреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ Aphrodite рдЧрддрд┐рд╢реАрд▓ рд╕рд╣рд╛рд░рд╛ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ: https://github.com/Khan/aphrodite/issues/141
рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рдореЗрдВ рдЗрд╕рдХрд╛ рдЕрд░реНрде рдпрд╣ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЕрдкрдиреЗ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЛ рднреА рдЫреЛрдбрд╝ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП:
рдЬрдмрдХрд┐ styled-components
рдФрд░ emotion
рджреЛрдиреЛрдВ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдмрд╣реБрдд рд▓реЛрдХрдкреНрд░рд┐рдп рд╣реИрдВ, react-styletron
рдЙрд╕ рд╕рдордп рдпрд╛ рд▓реЗрдЦрди рдкреНрд░рддрд┐ рд╕рдкреНрддрд╛рд╣ рд▓рдЧрднрдЧ 12500 рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдкреАрдЫреЗ рд╣реИ (рдпрд╣ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ рдПрдХ рдордЬрдмреВрдд рдХрд╛рд░рдг рд╣реИ рд╣рдореЗрдВ рдЗрд╕реЗ рдХреНрдпреЛрдВ рд╕рдорд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЗрд╕рдХреЗ рд╕рд╛рде рдЬрд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рд╕рдореБрджрд╛рдп рдХреЛ рдлрд┐рд░ рд╕реЗ рдЕрдкрдиреЗ рдРрдкреНрд╕ рдореЗрдВ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдЗрдВрдЬрди рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА)ред
рдпрд╣рд╛рдБ рд▓рд┐рд╕реНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд╕рдордп рд╕рд╛рдкреНрддрд╛рд╣рд┐рдХ рдбрд╛рдЙрдирд▓реЛрдбреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╕реВрдЪреА рджреА рдЧрдИ рд╣реИ:
рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕реНрдЯреЛрд░реАрдмреБрдХ рдореЗрдВ рднрд╛рд╡рдирд╛ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╣реИред
рдЗрд╕реА рддрд░рд╣ рдХреЗ рдЕрдиреБрдорд╛рдирд┐рдд рд╕рддреНрд░ / рдорд╣реАрдиреЗ:
рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░, 53.8% рдкреНрд░рддрд┐рд╢рдд рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рд╢реИрд▓рд┐рдпреЛрдВ (рдЬреЗрдПрд╕рдПрд╕) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рдЗрдВрдЬрди рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдо рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ 20.4% рдкреНрд░рддрд┐рд╢рдд рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдЬреЛ рдХрд┐ рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпрдХреНрд╖ рд╕рдорд░реНрдерди рдирд╣реАрдВ рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рдЧрднрдЧ 1.9% рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рднрд╛рд╡рдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрди рдирдВрдмрд░реЛрдВ рдХреЗ рдмрд╛рдж рд╣рдо рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдзрдХреНрдХрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рдРрд╕реА рдЪреАрдЬ рд╣реИ рдЬрд┐рд╕ рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рд╣рдо рдХрдИ рдЗрдВрдЬрдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддрдм рднреА рд╣рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдПрдХ рдХреА рд╡рдХрд╛рд▓рдд рдХрд░рдиреЗ рдФрд░ рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХреЛ рдбреЗрдореЛ рдореЗрдВ рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
styled
API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рдкрд╛рд╕ рд╣рдореЗрд╢рд╛ рдЖрд╡рд░рдг рдШрдЯрдХ рд╣реЛрдВрдЧреЗ рдпрджрд┐ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рд╢реИрд▓реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИредрд╣рдо рдХрдИ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдШрд░ рдХреЗ рдПрдбреЗрдкреНрдЯрд░ рдкреНрд░рджрд╛рди рдХрд░рдХреЗред рдХреБрдЫ рдЪреАрдЬреЗрдВ рдЬрд┐рди рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдо рд╢реИрд▓рд┐рдпреЛрдВ рдкрд░ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд╛рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЙрдирдХреЗ рдмреАрдЪ рдЕрд▓рдЧ рд╣реИ (рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ / рднрд╛рд╡рдирд╛рдУрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рд╕реЗ рдХрдо рдЬреЗрдПрд╕)ред рд╣рдо рд╡рд┐рд╖рдп рд╡рд╕реНрддреБ рдХрд╛ рдлрд┐рд░ рд╕реЗ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ рдЪрд╛рд╣реЗ рд╣рдо рдХреЛрдИ рднреА рдЙрдкрд╛рдп рдХрд░реЗрдВред
рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрдо рд╢рд╛рдорд┐рд▓ рд╕рдорд░реНрдерди styled
рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡реЗрдмрдкреИрдХ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕рд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реИ - (рдпрд╣ рд╕рд┐рд░реНрдл рдХреБрдЫ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рд╣реИ)ред
рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХрд┐ рдХрдХреНрд╖рд╛рдПрдВ рдХреИрд╕реЗ рджрд┐рдЦрддреА рд╣реИрдВ рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЙрдиреНрд╣реЗрдВ рдХреИрд╕реЗ рд▓рдХреНрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдХреА рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдирдП рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХреИрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВ рд╕реНрд▓рд╛рдЗрдбрд░ рдШрдЯрдХ рд▓реЗ рдЬрд╛рдКрдВрдЧрд╛ред рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдЙрддреНрдкрдиреНрди рдбреЛрдо рджрд┐рдЦрдиреЗ рдореЗрдВ рдХреИрд╕рд╛ рд╣реИ:
рдкреНрд░рддреНрдпреЗрдХ рд╡рд░реНрдЧ рдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рд╡рд░реНрдгрдирд╛рддреНрдордХ рд╢рдмреНрджрд╛рд░реНрде рд╣реИ рдФрд░ рд▓реЛрдЧ рдШрдЯрдХ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрди рдХрдХреНрд╖рд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рджреВрд╕рд░реА рдУрд░, рднрд╛рд╡рдирд╛рдПрдВ, рд╕реНрдЯрд╛рдЗрд▓-рдХрд▓рдкреБрд░реНрдЬреЗ рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╕рдорд╛рди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреНрд▓рд╛рд╕ рдирд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдХреБрдЫ рд╣реИрд╢ рдмрдирд╛рдПрдЧреАред рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдХрдХреНрд╖рд╛рдУрдВ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдЙрди рд╡рд░реНрдЧреЛрдВ рдХреЛ рдЬреЛрдбрд╝ рджреЗрдЧрд╛ рдЬрд┐рдиреНрд╣реЗрдВ рдбреЗрд╡рд▓рдкрд░реНрд╕ рджреНрд╡рд╛рд░рд╛ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд▓рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рднрд╛рд╡рдирд╛рдУрдВ рд╕реЗ рдЙрддреНрдкрдиреНрди рд╡рд░реНрдЧреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреНрд░рддреНрдпреЗрдХ рдШрдЯрдХ рдореЗрдВ рдЕрднреА рднреА рд╡реЗ рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрдВрдЧреА рдЬреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рдереАрдВ, рдЬреИрд╕реЗ MuiSlider-root
рдФрд░ MuiSlider-colorPrimary
, рдХреЗрд╡рд▓ рдЕрдВрддрд░ рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдпрд╣ рдХрдХреНрд╖рд╛рдПрдВ рдЕрдм рд╣реЛрдВрдЧреА рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЪрдпрдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдПрдХ рд╣реБрдХ рдХреА рддрд░рд╣ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ - useSliderClasses
рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рд╣рдо рдХрд┐рд╕ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЪрдпрди рдХрд░реЗрдВрдЧреЗ, рд╣рдо styled
API рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рдХрд┐ рдЙрди рджреЛрдиреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИред рдпрд╣ рд╣рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ + рдЕрд╕рдВрддреБрд╖реНрдЯ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрд╕рд╛рди рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ (рд╢рд╛рдпрдж рд╡реЗрдмрдкреИрдХ рдЙрдкрдирд╛рдо рдХреЗ рд╕рд╛рде, рдЬреИрд╕реЗ рдХрд┐ рдкреНрд░рдЪрд╛рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП)ред
рдЕрдВрдд рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореМрдЬреВрдж рджреЛ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рдкрдбрд╝рддрд╛рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдХреЛрд░ рдЯреАрдо рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИ рдХрд┐ рд╣рдо рднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде рдЬрд╛рдПрдВ ред рдХреБрдЫ рдкреНрд░рдореБрдЦ рддрддреНрд╡:
рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд▓рдЧрднрдЧ рдХрд┐рд╕реА рднреА рдкреНрд░рдпрд╛рд╕ рдХреЗ рд╕рд╛рде рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рднрд╛рд╡рдирд╛ рд╕реЗ cx + css рдХрд╛ рд╕рдорд░реНрдерди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдлрд╛рдпрджреЗрдордВрдж рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЕрдЧрд░ рд╡реЗ рд░реИрдкрд░ рдШрдЯрдХреЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╕реНрдЯрд╛рдЗрд▓ рдУрд╡рд░рд░рд╛рдЗрдб рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред
рдЗрд╕ рд╡рд┐рд╖рдп рдкрд░ рдЧрд╣рди рдЬрд╛рдБрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдбреЛрд╕ рд╕реЗ @ryancogswell ред рдЕрднреА рддрдХ рд╣рдореЗрдВ @emotion рдХреЗ рдХреЛрдб рдореЗрдВ
рд╣рдо рднрд╛рд╡рдирд╛ рдХреЗ рд╡реИрд╢реНрд╡рд┐рдХ рдШрдЯрдХ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рд╕реЗ createGlobalStyle
рднреА рджреЗрдЦ рд░рд╣реЗ рдереЗред рдпрд╣ рд░реЗрдВрдбрд░ (рд╕реНрдЯреНрд░рд┐рдХреНрдЯ / рдХрдВрд╕рд░реНрдЯ рдореЛрдб рдХреЗ рд▓рд┐рдП рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд) рдФрд░ рдЕрдкрдиреЗ рдХреНрд▓реАрдирдЕрдк рдлрдВрдХреНрд╢рди рдореЗрдВ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЙрдкрдпреЛрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдЕрдкрдиреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИред createGlobalStyle рдХреЛ рд╕рдорд╡рд░реНрддреА рдореЛрдб рдореЗрдВ рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рдкреВрд░реНрдг рдкреБрдирд░реНрд▓реЗрдЦрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдпрд╣ рд░реЗрдВрдбрд░ рдХреЗ рджреМрд░рд╛рди рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдареАрдХ рдирд╣реАрдВ рд╣реИ рдпрджрд┐ рд╡рд╣ рд░реЗрдВрдбрд░ рдХрднреА рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рдиреЗ рдкрд┐рдЫрд▓реЗ рдорд╣реАрдиреЗ рдореЗрдВ рдХреБрдЫ рдФрд░ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд╕рд╛рде рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЗрд╕ рдкреНрд░рдЧрддрд┐ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред
рдЗрдореЛрд╢рди рдХреЗ рдбреЙрдХреНрд╕ рдХрдИ рдХреНрд▓рд╛рд╕ рдХреЗ рдирд╛рдореЛрдВ рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рд▓рд╛рдн рдЙрдард╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рд╣реА рд╡рд░реНрдЧ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреА рд░рдЪрдирд╛ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВред V5 рдореЗрдВ, рд╣рдорд╛рд░реЗ рдореМрдЬреВрджрд╛ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╢реИрд▓реА рдХреЗ рдЙрдирдХреЗ рд╕рд╛рде рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛рдПрдВрдЧреЗред рднрд╛рд╡рдирд╛-рд╢реИрд▓реА рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╣реА рд╡рд░реНрдЧ рдореЗрдВ рдЬреЛрдбрд╝рддреА рд╣реИред рдпрд╣ рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдЗрди рд╕реНрдЯрд╛рдЗрд▓рд╢реАрдЯ рдСрд░реНрдбрд░ рд╕реЗ рдЫреБрдЯрдХрд╛рд░рд╛ рджрд┐рд▓рд╛рддрд╛ рд╣реИ рд╕рд╛рдордЧреНрд░реА-рдпреВрдЖрдИ рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдЖрдВрддрд░рд┐рдХ, рдХреНрдпреЛрдВрдХрд┐ рд╣рд░ рдШрдЯрдХ рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рдПрдХрд▓ рд╡рд░реНрдЧ рдирд╛рдо: +1 рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡реИрд╢реНрд╡рд┐рдХ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо (рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рдХреНрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП) рдФрд░ рдлрд┐рд░ рдкреНрд░рддрд┐ рддрддреНрд╡ рдПрдХ рдПрдХрд▓ (рднрд╛рд╡рдирд╛ рджреНрд╡рд╛рд░рд╛) рд╡рд░реНрдЧ рдирд╛рдо рдЙрддреНрдкрдиреНрди рд╣реЛрдЧрд╛ рдЬреЛ рдЗрд╕рдореЗрдВ рдмрд╣рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рд╕реНрд░реЛрддреЛрдВ рдХреЛ рд╕рдореЗрдХрд┐рдд рдХрд░реЗрдЧрд╛ред
рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рддрдм рд░рдЪрдирд╛ рдХреЗ рдХреНрд░рдо рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рднрд╛рд╡рдирд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред
рднрд╛рд╡рдирд╛ (рд╕рднреА рд░реЗрдВрдбрд░-рдЯрд╛рдЗрдо рдпрд╛ рдбреЗрдлрд┐рдирд┐рд╢рди-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬрд┐рд╢рди) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рднреА рд░рдЪрдирд╛рдПрдВ рддрддреНрд╡ рдкрд░ рдПрдХрд▓ рд╡рд░реНрдЧ рдореЗрдВ рдкрд░рд┐рдгрд╛рдо рдХрд░рддреА рд╣реИрдВред
рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдЗрд╕ рддрд░рд╣ рд░реЗрдВрдбрд░-рдЯрд╛рдЗрдо рдХрдВрдкреЛрдЬреАрд╢рди рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ (рдбреЗрдлрд┐рдирд┐рд╢рди-рдЯрд╛рдЗрдо рдХрдореНрдкреЛрдЬреАрд╢рди рд╕рд┐рдВрдЧрд▓ рдХреНрд▓рд╛рд╕ рдореЗрдВ рд╕рдВрдпреБрдХреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ)ред рдПрдХ рд╣реА рддрддреНрд╡ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрдИ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдореЛрдВ рдореЗрдВ рд╕рдорд╛рди рд╕рдВрд░рдЪрдирд╛ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд░рд╛рджрд╛ рдХрд┐рдпрд╛ рдерд╛ред
рдЖрдкрдиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╕реЛрдЪрд╛?
рдмрд╕ рдХреБрдЫ рд╕реБрдзрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП:
рд░рд┐рдПрдХреНрдЯ рд╕рдореБрджрд╛рдп, рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдкрд░, рдЬреЗрдПрд╕рдПрд╕ рдХреЗ рдкреИрдорд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рдЦрд┐рд▓рд╛рдл рдорддрджрд╛рди рдХрд┐рдпрд╛ рд╣реИред
рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рд╕реБрдЭрд╛рд╡ рджреВрдВрдЧрд╛ рдХрд┐ рд░рд┐рдПрдХреНрдЯ рд╕рдореБрджрд╛рдп рдиреЗ _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
) рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рддреНрдпреЗрдХ рдХрд▓рд░ рдкреНрд░реЛрдк рдХреЗ рд▓рд┐рдП рдареАрдХ рдЙрд╕реА рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрдВрдЧреА, рдиреАрдЪреЗ рджреЗрдЦреЗрдВ;
рдПрдХ рдФрд░ рдЕрдХреНрд╖рдорддрд╛ рд╣рдореЗрдВ рдорд┐рд▓реА рд╣реИ, рдЬрдм рдПрдХ рдирдпрд╛ рдШрдЯрдХ StyledComponent
рд╕реЗ рдКрдкрд░ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдЖрдзрд╛рд░ рд╕реА StyledComponent
рд╕реЗ рдЕрдзрд┐рдХ рдХреЙрдкреА рдХрд┐рдП рдЧрдП рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдирдпрд╛ рд╡рд░реНрдЧ рдмрдирд╛рдПрдЧрд╛ред рдиреАрдЪреЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ;
const DerivedComponent = styled(StyledComponent)`
font-family: monospace;
`
рдпрд╣ рдПрдХ рдФрд░ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ рд╣реИ рдХрд┐ рдХреЗрд╡рд▓ рдХрд╣рддреЗ рд╣реИрдВ рдмрдирд╛рддрд╛ рд╣реИ font-family: monospace
рд╕реЗ рдЙрддреНрдкрдиреНрди рдКрдкрд░ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП StyledComponent
ред рдпрд╣реА рд╣реИ, рдпрд╣ рдПрдХ рдРрд╕реА рд╕реАрдПрд╕рдПрд╕ рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ StyledComponent
рд╕реЗ рдХреЙрдкреА рдХреА рдЧрдИ рд╕рднреА рдкреНрд░реЙрдкреНрд╕ рд╣реИрдВ рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ;
рдЕрдм рдЕрдЧрд░ StyledComponent
рдФрд░ DerivedComponent
рдХрд╛ рдЙрдкрдпреЛрдЧ рдПрдХ рд╕рд╛рде рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ (рд╢реБрд░реВ рдореЗрдВ) рджреЛ css рдХрдХреНрд╖рд╛рдПрдВ рд╣реЛрддреА рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ css рдкреНрд░реЙрдкреНрд╕ рд╣реЛрддреЗ рд╣реИрдВ, (рдХреЗрд╡рд▓ рдлреЙрдиреНрдЯ-рдлреИрдорд┐рд▓реА рдореЗрдВ рднрд┐рдиреНрди)ред рдЬреИрд╕рд╛ рдХрд┐ рдиреАрдЪреЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ;
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдХрдИ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧреЛрдВ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рд╣реИрдВ рдЬреЛ рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рдмрдврд╝ рд╕рдХрддреЗ рд╣реИрдВред
рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рднрд╛рд╡рдирд╛ рдХреЗ рд╕рд╛рде, рдЬреИрд╕рд╛ рдХрд┐ рдШрдЯрдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдо рдХрдИ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рд╕реАрдПрд╕рдПрд╕ рдХрдХреНрд╖рд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВред
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╕реАрдПрд╕рдПрд╕ рд╡рд░реНрдЧ рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рдЗрд╕ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХрд╛ рдРрдк рдкрд░ рдХреЛрдИ рдзреНрдпрд╛рди рджреЗрдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЖрд╢реНрдЪрд░реНрдп рд╣реИ рдХрд┐ рдЕрдЧрд░ рдпрд╣ рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреБрдирдиреЗ рдкрд░ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдореИрдВ рд░рди рдЯрд╛рдЗрдо рдореЗрдВ CSSStyle рдмрдирд╛рдиреЗ рдФрд░ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдЗрдореЛрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рд╕рд╡рд╛рд▓ рдирд╣реАрдВ рдЙрдард╛ рд░рд╣рд╛ рд╣реВрдВред рдЗрддреНрд░ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рдореЗрдВ CSSstyles рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдкрд░ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред
рдореИрдВ рдмрд╕ рдЪрд┐рдВрддрд┐рдд рд╣реВрдБ рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рд╕реАрдПрд╕рдПрд╕рд╕реНрдЯрд╛рдЗрд▓ рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реИред рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЗрдореЛрд╢рди SSR (рдПрдб) рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ HTML рдореЗрдВ рд╕реНрдЯрд╛рдЗрд▓ рдЗрдирдмрд┐рд▓реНрдЯ рд╣реИрдВ, рд╣рдо рд╕рд┐рд░реНрдл рдЕрдирд╛рд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдлреВрд▓рд╛ рд╣реБрдЖ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ (рд╕реАрдПрд╕рдПрд╕ рд╕реНрдЯрд╛рдЗрд▓ рдЯреИрдЧ рдХреЗ рд╕рд╛рде) HTML рдлрд╛рдЗрд▓ред рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рджреНрд╡рд╛рд░рд╛ рдЕрдирд╛рд╡рд╢реНрдпрдХ рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд╕рд╛рде рдкрд╛рд░реНрд╕ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЯреИрдЧ рдорд┐рд▓рддреЗ рд╣реИрдВред
рдпрджрд┐ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ рдХреЛ рд╕рдорд╡рд░реНрддреА рдореЛрдб рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рд╕рдорд░реНрдерди рдерд╛, рддреЛ рдХреНрдпрд╛ рдпрд╣ рдЕрдзрд┐рдХ рд╕рдордЭрджрд╛рд░ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╕реНрдЯрд╛рдЗрд▓-рдШрдЯрдХреЛрдВ (JSS рдХреЛ рдЫреЛрдбрд╝рдХрд░) рдХреЗ рд╕рд╛рде MUI рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░ рд░рд╣реЗ рд╣реИрдВ? рдмрдВрдбрд▓ рд╕рд╛рдЗрдЬ рдореЗрдВ рдЫреЛрдЯрд╛ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдореВрдЯ рд╣реИ рдЕрдЧрд░ 2 рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗ рдПрд╕ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдордпреВрдЖрдИ рдХреЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ рдЗрд╕рдХреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
@petermikitsh рдиреЗ рдЬрд┐рди рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд╣рдо рднрд╛рд╡рдирд╛рдУрдВ рдкрд░ рдирд┐рд╖реНрдХрд░реНрд╖ рдирд┐рдХрд╛рд▓рд╛, рд╡реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВ рдЪрд╛рд░ рдмрд┐рдВрджреБ рд╣реИрдВ
рдкрд╣рд▓реЗ рдмрд┐рдВрджреБ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, рдЕрдЧрд░ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдмрдВрдбрд▓ рдореЗрдВ рджреЛ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рд╕рдорд╛рдзрд╛рди рд╣реЛрдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдкреНрд░рд╡рд╛рд╕ рд▓рд╛рдЧрдд рднрд╛рд╡рдирд╛ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдХрдо рд╣реИ + рдпрд╣ styled
рдЕрд▓рд╛рд╡рд╛ рдЕрдиреНрдп рдПрдкреАрдЖрдИ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
@ ko-toss рдпрд╣ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж рдпреЗ рд╕рднреА рдЕрдЪреНрдЫреЗ рдмрд┐рдВрджреБ рд╣реИрдВред рдпрд╣ рддрдереНрдп рдХрд┐ рднрд╛рд╡рдирд╛ рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╡рд░реНрдЧ рдирд╛рдо рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИ, рдпрд╣ рдУрд╡рд░рд░рд╛рдЗрдбреНрд╕ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдЗрдВрдЬрди рдмрдирд╛рддреА рд╣реИред рдХрдИ рд╡рд░реНрдЧ рдХреЗ рдирд╛рдо рдХреЗ рдХрд╛рд░рдг рд╣рдореЗрдВ рдЬреЛ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдЕрдВрддрд┐рдо рд╡рд░реНрдЧ рдЬреАрдд рдЬрд╛рдПрдЧрд╛, рдЬреЛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдЧреНрд░рд╕реНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░, рдореИрдВ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, рдЬрд╣рд╛рдВ рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рд╕реАрдПрд╕рдПрд╕ рдирд┐рдпрдо рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреВрд░реНрд╡рд╛рдиреБрдорд╛рдирд┐рдд рдУрд╡рд░рд░рд╛рдЗрдб рдХрд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХреНрд▓рд╛рд╕рдирд╛рдо рдПрдХ рдкрд░рдорд╛рдгреБ рдирд┐рдпрдо рд╣реИ, рдФрд░ рдлрд┐рд░ рд╕реЗ рдЬреЛ рдЙрд╕реЗ рдЬреАрддрддрд╛ рд╣реИред рдЬрд┐рд╕ рдХреНрд░рдо рдореЗрдВ рд╡реЗ рд▓рд┐рдЦреЗ рдЧрдП рд╣реИрдВ, рдЙрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдпрджрд┐ рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рд╕рднреА рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдорд░реНрдЬ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рдирд╣реАрдВ рд▓реЗрддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдВрдд рдореЗрдВ рдкреВрд░реНрдг рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓ рд╕рдХрддрд╛ рд╣реИред
рджреВрд╕рд░реА рдУрд░, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА css-in-js рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд▓реЛрдЧ рдмреЗрддрд░рддреАрдм рдврдВрдЧ рд╕реЗ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рдЕрдирдВрдд рд╕рдВрдпреЛрдЬрди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рд╡реЗ рдЕрднреА рднреА рдкреНрд░реЙрдкрд░ рдореВрд▓реНрдп рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдмрд╣реБрдд рд╕рдВрд░рдЪрд┐рдд рд╣реИрдВред
рд╣рд╛рд▓рд╛рдВрдХрд┐, рдлрд┐рд░ рд╕реЗ рдпреЗ рдЕрдЪреНрдЫреЗ рдмрд┐рдВрджреБ рд╣реИрдВ, рдХрд┐ рд╣рдорд╛рд░реЗ рдорди рдореЗрдВ рд╣реЛрдЧрд╛, рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж these
- рдЕрдиреНрдп?
[рд╕реНрдЯрд╛рдЗрд▓рд▓реЗрдХреНрд╕] рд╡рд┐рдЪрд╛рд░ рд╕рдВрдЧрддрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рд╣реИ (рдЬреИрд╕реЗ [рд╕реНрдЯрд╛рдЗрд▓ 9])
- рдЕрдиреНрдп?
рд╕реНрдЯрд╛рдЗрд▓ 9 рдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕ рдЗрдВрдЬрди рдЬреЛ рд╕реНрдЯрд╛рдЗрд▓рд▓реЗрдХреНрд╕ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ
рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд┐рд▓реНрдб рдЯрд╛рдЗрдо рд╕реЗрдЯрдЕрдк рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрддрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рд╢реБрд░реБрдЖрддреАред
(рдпрд╣ рдмрд▓реНрдХрд┐ FYI рд╣реИ, рднрд╛рд╡рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ)
https://github.com/cristianbote/goober (1kB, рдЗрдореЛрд╢рди рд╕реЗ рдХрдо рдмреБрд░рд╛)
рдореБрдЭреЗ рдЕрднреА рддрдХ рдЗрд╕рдХрд╛ рдХреЛрдИ рдЕрдиреБрднрд╡ рдирд╣реАрдВ рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдПрдХ рджрд┐рди рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
@cztomsik https://github.com/kuldeepkeshwar/filbert-js рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рдХреЛрдИ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рдВрдЯреИрдХреНрд╕ рд╕рдорд░реНрдерди (рдХреЗрд╡рд▓ CSS рдЯреЗрдореНрдкрд▓реЗрдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ) рдирд╣реАрдВ рд╣реИ
рдпрд╣рд╛рдВ рд╕рдордп-рд╕рдордп рдкрд░ рдмрд╛рддрдЪреАрдд рд╕рдордп рдкрд░ Google рд▓рд╛рдЗрдЯрд╣рд╛рдЙрд╕ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдП рдЧрдП рд╣реИрдВ:
FYI рдХрд░реЗрдВ, рдореИрдВрдиреЗ рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ v5, рдЗрдореЛрд╢рди V10, рдФрд░ рдЗрдореЛрд╢рди v11 рдХреЗ рдХреБрдЫ рд╡рд┐рд╕реНрддреГрдд рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдХреЛ, рд╡реЗрдирд┐рд▓рд╛ рдПрдкреАрдЖрдИ, рд╕реАрдПрд╕рдПрд╕ рдкреНрд░реЙрдкрд░ рдПрдкреАрдЖрдИ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓ рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде / рдмрд┐рдирд╛ рдмрдмрд▓ рдкреНрд▓рдЧрдЗрди рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛ рд╣реИред рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛!
рдХреНрдпрд╛ рдЖрдкрдиреЗ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдирдИ рд▓рд╣рд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ?
рдХреНрдпрд╛ рдЖрдкрдиреЗ рд╕реАрдПрд╕рдПрд╕-рдЗрди-рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреА рдирдИ рд▓рд╣рд░ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдкрд░рдорд╛рдгреБ рд╕реАрдПрд╕рдПрд╕ рдФрд░ рдЯрд╛рдЗрдкрд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рдорд░реНрдерди рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ?
рдпрд╣ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдкрд░ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЗрдореЛрд╢рди рднрд╛рд╡рдирд╛ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ 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;
`;
рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдПрдХ рд╕рдВрдХрд▓рд┐рдд рдШрдЯрдХ рдореЗрдВ рдмрджрд▓ рджреЗрдВ:
...
...
рдЬреЛ рддрдм рд░рдирдЯрд╛рдЗрдо рдкрд░ рдбреЙрдХреНрдпреВрдореЗрдВрдЯреНрд╕ рдХреЛ рд╣реЗрдб рдХреЗ рдкрд╛рд╕ рд▓реЗ рдЬрд╛рдПрдЧрд╛ред
рдЗрд╕ рддрд░рд╣ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди рд╣рдореЗрдВ рдЕрдкрдиреЗ рдЯреВрд▓рд┐рдВрдЧ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ / рд╕реЗрдЯрдЕрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛, рдЖрдкрдХреЗ рдШрдЯрдХ рдХреЛ рдХрд┐рд╕реА рднреА рдЙрдкрднреЛрдХреНрддрд╛ рддрдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдмрд╕ рдЖрдпрд╛рдд рдФрд░ рдЬрд╛рдУред рдпрд╣ рд╢рдХреНрддрд┐рд╢рд╛рд▓реА рд╣реИ, рдФрд░ рдЕрдзрд┐рдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рдЬреЗрдПрд╕ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдореЗрдВ рд╡рд░реНрддрдорд╛рди рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд╕рдорд╛рди рд╣реА рд╣реИ - рдПрдХ рдХреИрдЪ рдХреЗ рд╕рд╛рдеред
рд╕реАрдПрд╕рдПрд╕ рд░рдирдЯрд╛рдЗрдо рдкрд░ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдПрдХ рд╢реВрдиреНрдп-рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕рдорд╛рдзрд╛рди рд╣реЛрдирд╛ рдЬрд┐рд╕реЗ рд╢реВрдиреНрдп-рд░рдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЖрджрд░реНрд╢ рд╣реЛрдЧрд╛ рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдмрд┐рд▓рдХреБрд▓ рд╕рдЯреАрдХ рдЬрдЧрд╣ рд╡рд╛рд░ рдХрд┐рдпрд╛ред рдпрд╣ рд╕реНрд╡рдкреНрди рдореЗрдВ рдЕрдЪрд╛рдирдХ рд╕рдкрдирд╛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЪрд╛рдирдХ рдорд╣рд╕реВрд╕ рд╣реЛрдЧрд╛ред
рддрд▓рд╛рд╢рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ рдФрд░ рд╢рд╛рдпрдж рдХреБрдЫ рд╕рд╣рдпреЛрдЧ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдХреБрдЫ рдХреЛрдб рдФрд░ рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдВ рдореЗрд░реЗ рд▓рд┐рдП рдереЛрдбрд╝реА рд╡рд┐рджреЗрд╢реА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдХрдИ рд╡рд┐рд╡рд░рдгреЛрдВ рдореЗрдВ рдЬрд╛рдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реВрдВред рдпрд╣рд╛рдБ рдХреБрдЫ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рдЙрддреНрд╕рд╛рд╣рд┐рдд рд╣реВрдБ:
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 рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП :
makeStyles
: https://csb-5z6e2-lh4u8acll.vercel.app/?cases=mui-make-styles&cards=100emotion
: https://csb-5z6e2-lh4u8acll.vercel.app/?cases=emotion-styled&cards=100styled-components
: https://csb-5z6e2-lh4u8acll.vercel.app/?cases=styled-compenders&cards=100500 рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП :
makeStyles
: https://csb-5z6e2-lh4u8acll.vercel.app/?cases=mui-make-styles&cards=500emotion
: https://csb-5z6e2-lh4u8acll.vercel.app/?cases=emotion-styled&cards=500styled-components
: https://csb-5z6e2-lh4u8acll.vercel.app/?cases=styled-compenders&cards=5002500 рдХрд╛рд░реНрдб рдХреЗ рд▓рд┐рдП :
makeStyles
: https://csb-5z6e2-fqtfkzcrk.vercel.app/?cases=mui-make-styles&cards=2500emotion
: https://csb-5z6e2-fqtfkzcrk.vercel.app/?cases=emotion-styled&cards=2500styled-components
: https://csb-5z6e2-fqtfkzcrk.vercel.app/?cases=styled-compenders&cards=2500рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, emotion
рдФрд░ styled-components
рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, makeStyles
рдорд╛рдЙрдВрдЯ рдкрд░ 2-4x рддреЗрдЬреА рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдЕрджреНрдпрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП 6-8x
рддреЗрдЬ рд╣реЛрддрд╛ рд╣реИред
рдЕрдВрддрд░ рдХрд╛рдлреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╣рдо рдХрдо-рд╢рдХреНрддрд┐ рд╡рд╛рд▓реЗ рдЙрдкрдХрд░рдгреЛрдВ, рдЬреИрд╕реЗ рд╣рдорд╛рд░реЗ рдлреЛрди рдкрд░ рдкреНрд░рджрд╛рди рдХрд░ рд░рд╣реЗ рд╣реИрдВ .. рдФрд░ рд╡рд╣рд╛рдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рднрджреНрджреЗ рдлреЛрди рд╣реИрдВред
рдпрд╣ рд╕рдм рдХрд╣рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдореИрдВ рд╕рд╛рдордЧреНрд░реА рдкреНрд░рд╡рд╛рд╕рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ emotion
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ , рдЬреЛ 3-5x рдХрд╛рд░рдХ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╕рд╛рдордЧреНрд░реА UI рдФрд░ рд╕рд╛рдЗрдЯреЛрдВ рдХреЗ рдкреНрд░рддрд┐рдкрд╛рджрди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ (рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдЪ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдШрдЯрдХ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ; рдЬрд┐рддрдирд╛ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд╣реЛрдЧрд╛, рдЙрддрдирд╛ рдХрдо рдЕрдВрддрд░ рд╣реЛрдЧрд╛)ред
рдХреБрдЫ рдкреНрд░рд╢реНрди рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХреЗ рд▓рд┐рдП рднреЛрдЬрди:
makeStyles
рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВmakeStyles
рдХреА рд╕рдорд╕реНрдпрд╛ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд╣реИ, рдЬреЛ рдирд┐рдпрддрд╛рддреНрдордХ рдХреИрд╢ рдЖрдИрдбреА рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдареАрдХ рд╣реЛрдиреЗ рд▓рдЧрддреА рд╣реИред рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╣рд░ рдШрдЯрдХ рдЙрджрд╛рд╣рд░рдг рдХреЛ рдЧрддрд┐рд╢реАрд▓ рдкреНрд░реЙрдкреНрд╕ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдЖрдИрдбреА рдорд┐рд▓рддреА рд╣реИ, рднрд▓реЗ рд╣реА рдкреНрд░реЙрдкреНрд╕ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рд╕реНрдЯрд╛рдЗрд▓ рд╕рдорд╛рди рд╣реЛрдВ, рдЬрд┐рд╕рд╕реЗ рд░рдирдЯрд╛рдЗрдо рдУрд╡рд░рд╣реЗрдб, рд╕рд┐рд░ рдореЗрдВ рдХрдИ рд╕реНрдЯрд╛рдЗрд▓ рдЯреИрдЧ рдФрд░ рдПрд╕рдПрд╕рдЖрд░ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХрдореА рдЖрдПред рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╣реИрд╢рд┐рдВрдЧ рд░рдгрдиреАрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рддрдп рдХрд┐рдП рдЧрдП рд▓рдЧрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдЬреЗрдПрд╕ рдХреЗ рдХрдИ рдЕрдиреНрдп рд╕реАрдПрд╕рдПрд╕ рд▓рд┐рдмрд╛рд╕ рдореЗрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╕рдВрдмрдВрдзрд┐рдд: https://github.com/mui-org/material-ui/pull/16858emotion
рдФрд░ styled-components
рдкрд╛рд╕ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕реНрдерд╛рди рд╣реИ, рдпрд╛ makeStyles
рд╕реЗ рдмреЗрд╣рддрд░ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?рдореИрдВ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдиреБрдХрд╕рд╛рди рдХреЗ рд╕рд╛рде рд░рд╣ рд╕рдХрддрд╛ рд╣реВрдВред
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 рддреЗрдЬрд╝реА рд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╢рд┐рдВрдЧ / рдореЗрдореЛрдЗрдЬрд╝реЗрд╢рди рдмреЗрд╣рддрд░ рд╣реИ? рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореБрдЭреЗ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛ рд░рд╣реЗ рдорд╛рди рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣реЗ рд╣реИрдВред рдХреНрдпрд╛ рдЖрдк рдЕрджреНрдпрддрди рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
@satazor рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдЖрдкрдХреЗ рдкрд░реАрдХреНрд╖рдг рдХреЗ рдорд╛рдорд▓реЗ рд╕рдордХрдХреНрд╖ рд╣реИрдВред рд╣рдореЗрдВ рдЕрдЪреНрдЫрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рдПрдХ рдЬреЛрдбрд╝реЗ рдХреЛ рдЖрдк рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЕрдВрддрд░ рдХреЛ рдХрдо рдХрд░реЗрдЧрд╛:
<MenuItem>
<li>
рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд▓рдЧрднрдЧ x10 рдзреАрдорд╛ рдХреНрдпреЛрдВ рд╣реИ)редрджрд░рдЕрд╕рд▓, @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';
рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдпрд╣ рдмрддрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдХрд┐ рдпрд╣ рдзреАрдорд╛ рдХреНрдпреЛрдВ рд╣реИред рд╢реИрд▓рд┐рдпреЛрдВ рдкрд░ рдЕрдбрд╝рдЪрди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИред рдФрд░ рдорди рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рджреЗрд╡ рд╡рд┐рдзрд╛ рдореЗрдВ рдЪрд▓рд╛рдпрд╛ рд╣реИ run!
рдореИрдВрдиреЗ рд╕реНрд▓рд╛рдЗрдбрд░ рдХреЗ WIP рднрд╛рд╡рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рдирдП рдкреГрд╖реНрда рдЬреЛрдбрд╝реЗ рд╣реИрдВ:
рдПрдХ рдмрд╛рд░ рдЙрддреНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдмрдирд╛рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдВрдХрдбрд╝реЗ https://github.com/mui-org/material-ui/issues/22342#issuecomment -697540546 рдХреЗ рд╕рдорд╛рди рдкреНрд░рддреАрдд рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╣ X1.6 рдзреАрдореА (рд▓реЗрдХрд┐рди CSS рдкреВрд░реА рддрд░рд╣ рдЧрддрд┐рд╢реАрд▓ рд╣реИ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЖрдк рдЗрд╕рдХреЗ рд╕рд╛рде WIP рднрд╛рд╡рдирд╛ рд╕рдВрд╕реНрдХрд░рдг рдЦреЗрд▓ рд╕рдХрддреЗ рд╣реИрдВ:
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╣рдо рд╡рд░реНрддрдорд╛рди JSS рд╕рдВрд╕реНрдХрд░рдг X1.1 рдХреЛ рддреЗрдЬреА рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп withStyles рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: # 15023ред
рдардЧ рдореЛрдб рдореЗрдВ
рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдХреИрд╕реЗ makeStyles
рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдореИрдВ рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рдЬрдм рдЖрдк рд╕рд┐рд░реНрдл рд╕реНрдереИрддрд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдХрд┐рддрдирд╛ рддреЗрдЬ рд╣реЛрддрд╛ рд╣реИ:
attach
рдХреЛ рдмреБрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредstylesCreator.create
рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ fn
рдХреЛ makeStyles(fn)
рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реИредstylesCreator.create
рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд░реЗрдлрд░реА рд╕рдВрдЦреНрдпрд╛ 0 рд╣реИредрд░реЗрдВрдбрд░рд░реНрд╕ рдХреЗ рд▓рд┐рдП:
attach
рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредstylesCreator.create
рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ ref count> 0 рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рднреА рдХрд╛рдо рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредрдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрджрд┐ рдЧрддрд┐рд╢реАрд▓ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЛ рдЦреЗрд▓рдиреЗ рдореЗрдВ рд╣реИ, рддреЛ рд╢реАрдЯ рдХреЛ рд╣рд░ рдорд╛рдЙрдВрдЯ рдФрд░ рд░реЗрдВрдбрд░ рдкрд░ рдпрд╣рд╛рдВ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛрдЧрд╛ред
рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, styled-components
рдФрд░ emotion
рд╣рд░ рдШрдЯрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╣рдорд╛рд░реЗ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдХреЛ рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рдЧрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЕрдзрд┐рдХ рд╕реАрдкреАрдпреВ рд╕рд╛рдЗрдХрд┐рд▓ рдФрд░ рдореЗрдореЛрд░реА рдмреИрдХрдкреНрд░реЗрд╢рд░ рд╣реЛрддреЗ рд╣реИрдВред рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рд╡реЗ рдХрд┐рд╕реА рддрд░рд╣ рдкреНрд░реЙрдкреНрд╕ рдХреЙрдореНрдмрд┐рдиреЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдорд▓реНрдЯреА рдореЗрдореЛ рдХреИрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рди рд▓реЗрдВрдЧреЗ рдХрд┐ рд╕реНрдЯрд╛рдЗрд▓рд┐рдВрдЧ рдлрдВрдХреНрд╢рди рд╢реБрджреНрдз рд╣реИрдВ, рдЬреЛ рд╢рд╛рдпрдж рдРрд╕рд╛ рди рд╣реЛ, рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
const someContext = useContext(FooContext);
return <div css={ { paddingTop: someContext.padding(1) } }>;
рдпрджрд┐ рдореЗрд░реА рдзрд╛рд░рдгрд╛рдПрдВ рд╕рд╣реА рд╣реИрдВ, рддреЛ рд╕реНрдереИрддрд┐рдХ рд╢реИрд▓рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП makeStyles
рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рд╕реНрддрд░ рддрдХ рдкрд╣реБрдВрдЪрдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реЛрдЧрд╛, рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рдПрдкреАрдЖрдИ рдХреЛ рдХреИрд╕реЗ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдХрд┐ styled
рдпрд╛ css
API рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рдореБрдЭреЗ рдХреБрдЫ рд╕рдВрднрд╛рд╡рд┐рдд рджрд┐рд╢рд╛рдПрдБ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИрдВ рдЬрд┐рдирдХрд╛ рд╣рдо рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ:
рдЕрдЧрд░ рдХрд┐рд╕реА рддрд░рд╣ 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 рд░рдЦрдиреЗ рдХреЗ рдореБрдЦреНрдп рд▓рд╛рдн рдЬреЛ рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рднрд╛рд╡рдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:
withStyles
рдФрд░ makeStyles
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдЧреАред рдЙрдиреНрд╣реЗрдВ рдЧрддрд┐рд╢реАрд▓ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд▓рд┐рдП рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рд▓рд╛рдн рдореБрдлреНрдд рдореЗрдВ рдорд┐рд▓реЗрдЧрд╛редclasses
+ CSS API рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдЕрддрд┐рд░рд┐рдХреНрдд рддрд░реНрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред styled
рд╣рдореЗрдВ рд╣рд╛рде рд╕реЗ рдпрд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд╕рд╛рде рд╡реИрд╢реНрд╡рд┐рдХ className
s рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАредuseCss
рдХреЗ рдмрдЬрд╛рдп, рдЬреЗ рдПрд╕ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рд╕реАрдПрд╕рдПрд╕ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдПрдбрд╛рдкреНрдЯрд░ рд╕рдорд╛рд░реЛрд╣ рд╣реИ styled
редstyled
рддрд░рд╣ рдЙрдиреНрд╣реЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП webpack / babel aliasing рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдВрдЧреЗредрд╣рдордиреЗ https://twitter.com/olivtassinari/status/1309247827839680512 рдкрд░ рдЖрдЧреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЗ рдХреА рдЦреЛрдЬ рдХреА рд╣реИ
https://codesandbox.io/s/slider-comparison-forked-jziv6?file=/src/App.jsтАж
рдЦреЗрдж рд╣реИ рдХрд┐ рдореИрдВ рдЖрдкрдХреЛ рдЪрд░реНрдЪрд╛ рдореЗрдВ рдЗрддрдиреА рджреЗрд░ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдереЛрдбрд╝рд╛ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реВрдВ рдХрд┐ рдЖрдк рд╕реНрдЯрд╛рдЗрд▓-рдЬреЗрдПрдХреНрд╕ рдкрд░ рдмрд╛рд░реАрдХреА рд╕реЗ рдирд╣реАрдВ рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ
рдЙрдирдХреА рд╕реВрдЪреА рдЖрдкрдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рддреА рд╣реИ:
рдореИрдВ рдЗрд╕ рддрдереНрдп рдкрд░ рдзреНрдпрд╛рди рджреВрдВрдЧрд╛ рдХрд┐ рдпрд╣ рд▓рдЧрднрдЧ рдПрдХ рдЫрд╛рдпрд╛ рд╕реАрдПрд╕рдПрд╕ рдорд╛рдирдХ рдПрдкреАрдЖрдИ рд╣реИ ред рдЗрд╕рд▓рд┐рдП 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 рдХреЗ рдлрд╛рдпрджреЗ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореИрдВ рд╕реЛрдЪ рд╕рдХрддрд╛ рд╣реВрдВ:
.css-e7ylz8 .MuiTreeItem-group
ред рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЧрд╛рд░рдВрдЯреА рдирд╣реАрдВ рд╣реИ рдХрд┐ рдШрдЯрдХ рдмрд╛рд▓ рдШрдЯрдХ рдкрд░ рд╢реИрд▓реА рдХреЛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рди рдХрд┐ рд╡рд╣ рдкреНрд░рднрд╛рд╡ рдЬрд┐рд╕рдХреА рдЖрдк рдЙрдореНрдореАрдж рдХрд░ рд░рд╣реЗ рдереЗ, рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ!)ред рд╢рд╛рдпрдж рд╣рдорд╛рд░реЗ рдШрдЯрдХреЛрдВ рдХреЗ рд▓рд┐рдП рдареАрдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВрдЧреЗред$styleRule
рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЪреЗрддрд╛рд╡рдиреА рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рд╢реИрд▓реА рдирд┐рдпрдо рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИред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% рдЕрдзрд┐рдХ рдкреНрд░рдпрд╛рд╕ (рдПрдХ рдЕрдиреБрдорд╛рди) рд╣реИред рдЕрд╡рд╕рд░ рд▓рд╛рдЧрдд рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдзрд┐рдХ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдордирдореБрдЯрд╛рд╡ рджрд░реНрд╢рдХреЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рдЬреЛ рдХрд┐ рджреЗрд╢реА-рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рд▓рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рд╣рдореЗрдВ рд╕реНрдкрд░реНрд╢рд░реЗрдЦрд╛ рдХреЗ рдмрд╣реБрдд рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рдирд╣реАрдВ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдпреБрдХреНрддрд┐рдпреЛрдВ рдкрд░ рдЬреЛрд░ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
RN рдореЗрдВ MUI рдХрд╛рд░реНрдп рдХрд░рдиреЗ рдореЗрдВ рдХрдард┐рдирд╛рдИ рдХреЗ 2/3 рд╕реНрд╡рд┐рдЪ рдСрдл рдЗрдореЛрд╢рди рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдИ рд╣реИ
рд╣рдо рдЖрдкрдХрд╛ POC to рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реИрдВ
рд╣рдо рдЖрдкрдХрд╛ POC to рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реИрдВ
рдЕрдЧрд░ рдореБрдЭреЗ рдореМрдХрд╛ рдорд┐рд▓рд╛ рддреЛ рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдЖрдо рддреМрд░ рдкрд░ рд▓реЛрдЧ рдЙрди рдЪреАрдЬреЛрдВ рдХреЗ рд▓рд┐рдП POCs рдмрдирд╛рдиреЗ рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рдирдХреЗ рд▓рд┐рдП рдЕрдиреБрд░рдХреНрд╖рдХ рдПрдХ рдЙрджрд╛рд╕реАрдирддрд╛ рджрд┐рдЦрд╛рддреЗ рд╣реИрдВред рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рдЬрдм рд╡рд░реНрддрдорд╛рди рдорд╛рд╣реМрд▓ рд╣реИ рдХрд┐ рдпрд╣ рд╢рд╛рдпрдж рд╕рд┐рд░реНрдл рдЕрдВрдд рдореЗрдВ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдирд┐рд░реНрдорд╛рдг рд╣реИред рдЗрд╕рд▓рд┐рдП рдореИрдВ рднрд╡рд┐рд╖реНрдп рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдЖрд░рдПрди рдХреЗ рдореВрд▓реНрдп рдпрд╛ рдЖрд░рдПрди рдХреЗ рдореВрд▓реНрдп рдХреЛ рдЦрд╛рд░рд┐рдЬ рдХрд░рдиреЗ рд╕реЗ рдХреНрдпреЛрдВ рдзрдХреНрдХрд╛ рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред
рджреЛ рд╕рд╡рд╛рд▓:
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
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рднрд╛рд╡рдирд╛ рдХреЗ рдЕрдиреБрдЪрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдмреЛрд▓рддреЗ рд╣реБрдП - рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИ
рд╣рдореЗрдВ рдЬрд▓реНрдж рд╣реА рдПрдХ рдирдпрд╛ рдкреНрд░рдореБрдЦ-рдИрд╢ рдЬрд╛рд░реА рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬрд┐рд╕рдореЗрдВ рдХреЛрдИ рдХреНрд░рд╛рдВрддрд┐ рдирд╣реАрдВ рд╣реЛрдЧреА, рдмрд╕ рдХреБрдЫ рдХреНрд▓реАрдирдЕрдк, рд╕рдордЧреНрд░ рд╕реБрдзрд╛рд░, рд╣реБрдб рдХреЗ рдиреАрдЪреЗ рд╣реБрдХ рдФрд░ рдЯреАрдПрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реБрдзрд╛рд░ (рдмреЗрд╣рддрд░ рдЕрдиреБрдорд╛рди рдФрд░ рдкреНрд░рджрд░реНрд╢рди)ред
рдУрд╣, рдФрд░ рд▓рд┐рдЦрд┐рдд рдкрд╛рд░реНрд╕рд░! рднрд╛рд╡рдирд╛ рдФрд░ рд╕реНрдЯрд╛рдЗрд▓-рдХрдВрдкреЛрдиреЗрдВрдЯреНрд╕ рдореЗрдВ рдХреБрдЫ рдПрдЬ рдмрдЧреНрд╕ рдХреЛ рдЦрддреНрдо рдХрд░рддрд╛ рд╣реИ (рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рд╡реЗ рджреЛрдиреЛрдВ рдПрдХ рд╣реА рдкрд╛рд░реНрд╕рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ)ред рдпрд╣ рдЫреЛрдЯрд╛ рдФрд░ рддреЗрдЬ рджреЛрдиреЛрдВ рд╣реИред