Token di Tailwind, Variabel CSS, dan CSS-in-JS
Integrasikan token yang dihasilkan ke konfigurasi Tailwind, properti khusus CSS, serta tema Emotion atau styled-components.
Token di Tailwind, Variabel CSS, dan CSS-in-JS adalah pelajaran React Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar React Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus React Academy mencakup 4 pelajaran total.
Output Properti Kustom CSS
Output platform CSS dari Style Dictionary menghasilkan berkas properti kustom CSS: --color-primary-500: #3b82f6; --spacing-4: 16px; dan seterusnya. Variabel ini didefinisikan pada :root, sehingga tersedia secara global. Inilah dasar untuk semua penggunaan token dalam aplikasi.
Mengimpor Token Secara Global
Impor berkas token CSS yang dihasilkan ke dalam lembar gaya global atau komponen tata letak akar: @import './tokens/tokens.css'. Dalam Next.js, impor berkas tersebut di app/layout.tsx atau styles/globals.css. Setelah diimpor, setiap aturan CSS dan komponen dalam aplikasi dapat merujuk ke properti kustom tersebut.
Menggunakan Token dalam CSS
Rujuk variabel CSS dalam lembar gaya komponen atau CSS Modules: background-color: var(--color-primary-500); dan padding: var(--spacing-4);. Jika nilai token berubah dalam sumber JSON, pembangunan ulang Style Dictionary akan memperbarui berkas CSS, dan semua komponen yang menggunakan variabel tersebut otomatis mencerminkan nilai baru.
Penerapan Tema Saat Aplikasi Berjalan
Properti kustom CSS memungkinkan penggantian tema saat aplikasi berjalan. Untuk mode gelap, timpa nilai token di bawah pemilih tema: [data-theme="dark"] { --color-background: #1a1a2a; --color-text: #f0f0f0; }. Menetapkan document.documentElement.setAttribute('data-theme', 'dark') akan langsung mengganti semua nilai token tanpa memuat ulang atau membangun ulang aplikasi.
Ekstensi Konfigurasi Tailwind
Perluas tema Tailwind dalam tailwind.config.js untuk menggunakan nilai token: theme: { extend: { colors: { primary: { 500: tokenOutput.color.primary[500] } } } }. Impor hasil JS dari Style Dictionary ke dalam konfigurasi Tailwind untuk memastikan kelas Tailwind (bg-primary-500) selalu menggunakan nilai token acuan.
Tailwind dengan Nilai Variabel CSS
Untuk tema yang dapat diganti saat aplikasi berjalan dalam Tailwind, konfigurasikan warna agar merujuk ke variabel CSS: 'primary': 'rgb(var(--color-primary-rgb) / <alpha-value>)'. Variabel CSS Anda harus menyimpan komponen RGB tanpa pembungkus rgb() (--color-primary-rgb: 59 130 246). Tailwind kemudian menangani utilitas opasitas secara otomatis.
Integrasi Emotion dan Styled-Components
Pustaka CSS-in-JS menggunakan objek tema JavaScript. Berikan hasil JS Style Dictionary sebagai nilai penyedia tema: <ThemeProvider theme={tokens}>. Komponen mengakses token melalui const theme = useTheme() dan theme.color.primary[500]. Style Dictionary menghasilkan objek token bertipe; penyedia tema mendistribusikannya.
Menegakkan Penggunaan Token dengan Aturan Pemeriksaan Kode
Plugin stylelint-no-hardcoded-colors dan aturan ESLint khusus dapat memastikan tidak ada nilai heksadesimal yang ditulis langsung dalam lembar gaya atau berkas komponen. Jika pengembang menulis color: #3b82f6 alih-alih color: var(--color-primary-500), pemeriksa kode akan melaporkannya. Dengan demikian, sistem token tetap menjadi satu-satunya sumber warna.
Daftar Aman Tailwind untuk Token Dinamis
Ketika nama kelas Tailwind dibuat secara dinamis dari nama token saat runtime, proses pembersihan Tailwind dapat menghapus kelas tersebut karena nama-nama itu tidak muncul sebagai string statis dalam kode sumber. Tambahkan pola kelas dinamis ke safelist dalam tailwind.config.js: safelist: [{ pattern: /bg-primary-/ }].
Alur Kerja Plugin Figma Tokens
Plugin Figma Tokens mengekspor nilai token Figma langsung ke format JSON Style Dictionary. Alurnya: desainer memperbarui warna dalam Figma Variables, mengekspornya melalui plugin, menyimpan JSON yang diperbarui ke repositori, skrip prapembangunan menjalankan Style Dictionary, lalu hasil CSS dan JS yang diperbarui digunakan dalam aplikasi React. Desain dan kode tetap sinkron.
Penimpaan Token Berdasarkan Lingkup
Properti kustom CSS memiliki lingkup pada elemen tempat properti tersebut didefinisikan dan semua turunannya. Hal ini memungkinkan penimpaan tema tingkat komponen: komponen kartu dapat menetapkan --color-background: var(--color-surface-elevated) pada elemen akarnya, dan semua turunannya menggunakan warna permukaan yang ditinggikan tanpa meneruskan properti melalui banyak komponen.
Properti Kustom CSS vs Tailwind untuk Token
Apa keunggulan utama menggunakan properti kustom CSS (variabel) untuk token desain dibandingkan nilai Tailwind statis?
Ringkasan Pelajaran
Style Dictionary menghasilkan properti kustom CSS untuk impor global dan objek JS untuk integrasi Tailwind serta CSS-in-JS. Variabel CSS memungkinkan penggantian tema saat aplikasi berjalan melalui penimpaan [data-theme]. Tailwind memperluas konfigurasinya dengan nilai token dari hasil JS; untuk tema yang mendukung opasitas, konfigurasikan Tailwind agar merujuk ke variabel CSS RGB. Aturan pemeriksaan kode menegakkan penggunaan warna yang hanya berasal dari token, sehingga nilai yang ditulis langsung tidak masuk ke basis kode.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Token di Tailwind, Variabel CSS, dan CSS-in-JS” gratis?
Ya — teks lengkap “Token di Tailwind, Variabel CSS, dan CSS-in-JS” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus React Academy, upgrade ke CoddyKit PRO. Kursus React Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Token di Tailwind, Variabel CSS, dan CSS-in-JS”?
Integrasikan token yang dihasilkan ke konfigurasi Tailwind, properti khusus CSS, serta tema Emotion atau styled-components. Kamu berlatih React Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai React Academy?
Tidak diperlukan pengalaman sebelumnya. React Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Token di Tailwind, Variabel CSS, dan CSS-in-JS” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran React Academy ini?
Ya. Setiap pelajaran React Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Apa Itu Token Desain dan Mengapa Penting
- Style Dictionary: Mentransformasi dan Menghasilkan Token
- Token di Tailwind, Variabel CSS, dan CSS-in-JS
- Arsitektur Token Multi-Tema dan Multi-Merek