⊗jsrtPmSyStC 103 of 112 menu

Stilizarea cu Styled Components în React

În lecțiile anterioare am analizat tehnicile de stilizare folosind CSS global și stilizarea inline. În această lecție vom lucra cu o abordare mai eficientă pentru aplicațiile mari - utilizarea bibliotecii styled-components.

Deci, să luăm componenta noastră fără stiluri CSS, pe care am folosit-o în lecțiile anterioare:

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

Pentru început, să instalăm biblioteca Styled Components:

npm install --save styled-components

Apoi importăm pachetul necesar în componenta App:

import styled from 'styled-components';

Acum putem împacheta etichetele în stiluri și să le aplicăm ca componente React, dar deja cu stiluri atașate direct în JS. Această abordare se mai numește CSS în JS.

Hai să stilizăm primul paragraf. Pentru aceasta înainte de funcția App după liniile de import creăm componenta Text1. În obiectul styled din bibliotecă avem nevoie de un paragraf, deci scriem styled.p. Apoi, în șirul șablon enumerăm stilurile CSS necesare - ca în CSS obișnuit:

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

După cum vedeți, folosim aici CSS pur sub formă de șiruri șablon, ceea ce este foarte convenabil. În mod similar putem folosi interogări media, pseudo-elemente, selectori și alte funcționalități CSS.

Acum în interiorul funcției componentei App înlocuim eticheta p cu componenta creată de noi Text1 cu stiluri CSS:

<Text1>text</Text1>

În mod similar stilizăm al doilea și al treilea paragraf. Pentru aceasta creăm componentele Text2 și Text3:

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

Și, în final, stilizăm div-ul nostru. Pentru aceasta creăm o componentă și o numim Container:

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

Înlocuim toate etichetele noastre cu componentele create:

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> ); }

Datorită acestei abordări se pot crea componente reutilizabile cu stiluri.

Dacă deschideți marcajul generat în panela de dezvoltator din browser, veți vedea că fiecare componentă are generate propriile clase unice. Astfel, nu mai trebuie să ne îngrijorăm de conflictele dintre clasele componentelor separate.

În mod similar se pot stiliza componente, folosind, de exemplu, biblioteca Emotion.

Luați componenta React pe care ați făcut-o în sarcina din lecția anterioară, stilizați-o, folosind biblioteca Styled Components.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge