⊗jsrtPmSyStC 103 of 112 menu

Penggayaan dengan Styled Components dalam React

Dalam pelajaran sebelumnya, kita telah melihat teknik penggayaan menggunakan CSS global dan penggayaan sebaris. Dalam pelajaran ini, kita akan bekerja dengan pendekatan yang lebih berkesan untuk aplikasi besar - penggunaan pustaka styled-components.

Jadi, mari kita ambil komponen kami tanpa gaya CSS, yang kami gunakan dalam pelajaran lepas:

function App() { return ( <div> <p>text</p> <p>text</p> <p>text</p> </div> ); }

Sebagai permulaan, mari pasang pustaka Styled Components:

npm install --save styled-components

Kemudian import pakej yang diperlukan ke dalam komponen App:

import styled from 'styled-components';

Sekarang kita boleh membungkus tag dalam gaya dan menggunakannya sebagai komponen React, tetapi dengan gaya yang dilampirkan terus dalam JS. Pendekatan ini juga dipanggil CSS dalam JS.

Mari kita gayakan perenggan pertama. Untuk itu sebelum fungsi App selepas baris import buat komponen Text1. Dalam objek styled dari pustaka, kita memerlukan perenggan, oleh itu kami menulis styled.p. Kemudian, dalam rentetan templat, senaraikan gaya CSS yang diperlukan - seperti dalam CSS biasa:

const Text1 = styled.p` color: orangered; font-weight: bold; `;

Seperti yang anda lihat, kami menggunakan CSS tulen di sini dalam bentuk rentetan templat, yang sangat mudah. Dengan cara yang sama kita boleh menggunakan pertanyaan media, pseudoelemen, pemilih dan fungsi CSS lain.

Sekarang di dalam fungsi komponen App tukar tag p kepada komponen yang kami buat Text1 dengan gaya CSS:

<Text1>text</Text1>

Dengan cara yang sama, mari gayakan perenggan kedua dan ketiga. Untuk itu buat komponen Text2 dan Text3:

const Text2 = styled.p` font-style: italic; color: brown; `; const Text3 = styled.p` background-color: orange; font-weight: bold; color: white; `;

Akhirnya, mari gayakan div kami. Untuk itu buat komponen dan namakannya Container:

const Container = styled.div` width: 200px; border: 2px solid brown; padding: 10px; text-align: center; `;

Tukar semua tag kami dengan komponen yang dibuat:

import styled from "styled-components"; const Container = styled.div` width: 200px; border: 2px solid brown; padding: 10px; text-align: center; `; const Text1 = styled.p` color: orangered; font-weight: bold; `; const Text2 = styled.p` font-style: italic; color: brown; `; const Text3 = styled.p` background-color: orange; font-weight: bold; color: white; `; function App() { return ( <Container> <Text1>text</Text1> <Text2>text</Text2> <Text3>text</Text3> </Container> ); }

Berkat pendekatan ini, kita boleh mewujudkan komponen yang boleh digunakan berulang kali dengan gaya.

Jika anda membuka penjanaan markup dalam panel pemaju dalam pelayar, anda akan melihat bahawa setiap komponen mempunyai kelas uniknya sendiri yang dijana. Oleh itu, kami tidak perlu lagi bimbang tentang konflik antara kelas komponen individu.

Dengan cara yang sama, anda boleh menggayakan komponen, menggunakan, sebagai contoh, pustaka Emotion.

Ambil komponen React yang anda buat dalam tugas untuk pelajaran lepas, gayakan ia, menggunakan pustaka Styled Components.

Melayu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan kuki untuk operasi laman web, analisis dan personalisasi. Pemprosesan data dijalankan mengikut Polisi Kerahsiaan.
terima semua tataletak tolak