CSS-in-JS

CSS-in-JS jest jednym z największych wydarzeń ostatnich kilku lat w świecie CSS. Podobnie jak preprocesory ominęły CSS, aby wprowadzić własny zestaw nowych funkcji ponad dziesięć lat temu, biblioteki CSS-in-JS nakładają się na moc JavaScript, aby stworzyć własną ścieżkę, nie czekając na pozostający w tyle CSS.

Jednak podczas gdy niektóre biblioteki, takie jak Styled Components i Emotion, stały się solidnymi opcjami, cały ekosystem jest nadal bardzo rozdrobniony i nieustannie się przemieszcza. Więc dopiero okaże się, jakie miejsce CSS-in-JS zajmie w całym ekosystemie.

Jedno jest pewne: większa konkurencja jest zawsze dobra, a jeśli CSS może ukraść niektóre z najświeższych pomysłów kuzyna JavaScript, to wszyscy na tym skorzystamy!

rankingi świadomości, zainteresowania i zadowolenia. Należy zauważyć, że wszystkie te trzy wskaźniki odpowiadają temu samemu punktowi czasowemu.

Świadomość (Całkowita liczba respondentów - Nie słyszałem)/Całkowita liczba respondentów
Zainteresowanie Zainteresowany/(Zainteresowany + Nie zainteresowany)
Zadowolenie Użyję ponownie/(Użyję ponownie + Nie będę używał)

Kolumna „ogólna” pokazuje ogólne wykorzystanie każdej technologii (respondenci, którzy wybrali użyłbym ponownie” lub „nie użyłbym ponownie”), podczas gdy poniższe kolumny pokazują współczynnik wykorzystania dla każdego przedziału „lat doświadczenia”.

Jaśniejsze różowe tło oznacza wyższy niż ogólny stosunek średni dla danego wspornika.

Lat Doświadczenia
ogólny
<1
1~2
2~5
5~10
10~20
>20
Styled Components
36.1%
27.75%
36.68%
43.26%
41.3%
35.84%
31.76%
CSS Modules
21.71%
13.66%
19.12%
26.73%
27.62%
22.91%
20.24%
Styled JSX
12.33%
7.05%
13.79%
14.2%
13.99%
12.73%
12.24%
Emotion
5.96%
0.88%
5.85%
8.04%
8.48%
7.34%
5.18%
JSS
5.86%
2.2%
7.31%
7.29%
7.26%
5.71%
5.41%
Glamor
3.86%
0.88%
2.61%
5.03%
5.35%
5.55%
3.76%
Radium
2.09%
0.88%
1.57%
2.05%
3.07%
3.07%
1.88%
Aphrodite
1.88%
0.44%
1.15%
2.09%
2.6%
2.64%
2.35%
Różnica od ogólnego wykorzystania:
-20%-10%0+10%+20%

Kolumna „ogólna” pokazuje całkowite wykorzystanie każdej technologii (respondenci, którzy wybrali „użyłbym ponownie” lub „nie użyłbym ponownie”), podczas gdy poniższe kolumny pokazują współczynnik wykorzystania dla każdego przedziału „rocznego wynagrodzenia”.

Jaśniejsze różowe tło oznacza wyższy niż ogólny stosunek średni dla danego wspornika.

Zakres wynagrodzenia (USD)
ogólny
0
0~10k
10~30k
30~50k
50~100k
100~200k
>200k
Styled Components
38.08%
30.39%
32.26%
36.18%
40.11%
40.47%
48.82%
38.35%
CSS Modules
25.92%
16.51%
15.12%
22.02%
23.78%
25.69%
35.47%
42.86%
Styled JSX
13.87%
11.82%
10.83%
11.14%
13.98%
14.13%
17.14%
18.05%
Emotion
8.79%
5.07%
4.29%
5.31%
6.34%
7.94%
13.78%
18.8%
JSS
7.71%
5.63%
5%
6.44%
6.39%
6.8%
8.67%
15.04%
Glamor
5.82%
3%
2.38%
3.22%
4.57%
5.34%
8.67%
13.53%
Radium
3.67%
2.25%
1.79%
1.33%
2.17%
2.54%
5.05%
10.53%
Aphrodite
3.26%
0.38%
0.83%
1.28%
2.04%
2.6%
4.43%
11.28%
Różnica od ogólnego wykorzystania:
-20%-10%0+10%+20%

Styled Components

Procen ukończenia: 98.48% (11145)
Procen ukończenia: 98.48% (11145)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie33.17%
UŻYWAEM tego i NIE użyję ponownie5.88%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć26.23%
SYSZAEŁEM o tym i NIE jestem zainteresowany12.53%
Nigdy o tym nie słyszałem20.66%

Visual primitives for the component age. Use the best bits of ES6 and CSS to style your apps without stress 💅

Glamor

Procen ukończenia: 97.79% (11067)
Procen ukończenia: 97.79% (11067)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie2.7%
UŻYWAEM tego i NIE użyję ponownie2.21%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć9.18%
SYSZAEŁEM o tym i NIE jestem zainteresowany14.2%
Nigdy o tym nie słyszałem69.5%

inline css for react et al

Aphrodite

Procen ukończenia: 98.49% (11146)
Procen ukończenia: 98.49% (11146)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie0.74%
UŻYWAEM tego i NIE użyję ponownie1.55%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć4.79%
SYSZAEŁEM o tym i NIE jestem zainteresowany11.55%
Nigdy o tym nie słyszałem79.86%

Framework-agnostic CSS-in-JS with support for server-side rendering, browser prefixing, and minimum CSS generation

JSS

Procen ukończenia: 98.5% (11147)
Procen ukończenia: 98.5% (11147)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie3.92%
UŻYWAEM tego i NIE użyję ponownie2.71%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć9%
SYSZAEŁEM o tym i NIE jestem zainteresowany14.74%
Nigdy o tym nie słyszałem68.13%

JSS is an authoring tool for CSS which uses JavaScript as a host language.

Styled JSX

Procen ukończenia: 98.1% (11102)
Procen ukończenia: 98.1% (11102)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie9%
UŻYWAEM tego i NIE użyję ponownie4.41%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć13.39%
SYSZAEŁEM o tym i NIE jestem zainteresowany16.67%
Nigdy o tym nie słyszałem54.64%

Full CSS support for JSX without compromises

Radium

Procen ukończenia: 98.04% (11095)
Procen ukończenia: 98.04% (11095)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie0.68%
UŻYWAEM tego i NIE użyję ponownie1.88%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć3.89%
SYSZAEŁEM o tym i NIE jestem zainteresowany11.03%
Nigdy o tym nie słyszałem80.56%

A toolchain for React component styling.

Emotion

Procen ukończenia: 98.86% (11188)
Procen ukończenia: 98.86% (11188)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie6.49%
UŻYWAEM tego i NIE użyję ponownie1.01%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć10.89%
SYSZAEŁEM o tym i NIE jestem zainteresowany8.39%
Nigdy o tym nie słyszałem72.09%

👩‍🎤 CSS-in-JS library designed for high performance style composition

CSS Modules

Procen ukończenia: 98.88% (11190)
Procen ukończenia: 98.88% (11190)
Procenty%IlośćΣ
UŻYWAEM tego i UŻYJĘ ponownie21.11%
UŻYWAEM tego i NIE użyję ponownie3.52%
SYSZAEŁEM o tym i CHCIAŁBYM się tego nauczyć30.29%
SYSZAEŁEM o tym i NIE jestem zainteresowany7.71%
Nigdy o tym nie słyszałem36.25%

Documentation about css-modules

Linki

Learn to Build Scalable React Applications (Includes Using Emotion with React)

You’ll learn hooks in-depth, CSS-in-JS with Emotion, increase performance, add TypeScript and test your App!
Dziękujemy naszym partnerom za wsparcie! Dowiedz się więcej.