Vkladanie dát do atribútu style z premenných v React
V minulej lekcii sme písali objekt priamo v
atribúte style. Môžeme tiež
použiť vkladanie dát do tohto objektu
z premenných.
Zoberme náš React komponent bez CSS štýlov:
function App() {
return (
<div>
<p>text</p>
<p>text</p>
<p>text</p>
</div>
);
}
Teraz budeme vytvárať premenné a priraďovať im hodnoty CSS vlastností. Začnime postupne so štýlmi pre div.
V súbore komponentu pred príkazom
return vytvoríme premennú
wd1 a priradíme jej hodnotu
'200px':
const wd1 = '200px';
Podobným spôsobom vytvoríme premenné pre všetky hodnoty vlastností nášho divu:
const wd1 = '200px';
const br1 = '2px solid brown';
const pd1 = '10px';
const ta1 = 'center';
Teraz pridajme premenné pre prvý odsek:
const co1 = 'orangered';
const fw1 = 'bold';
Pre druhý odsek:
const fs1 = 'italic';
const co2 = 'brown';
A nakoniec pre posledný. Tu
budú potrebné len dve, nie tri
premenné. Nemá zmysel opakovať sa,
veď hodnota bold u nás už
je pre prvý odsek:
const bco1 = 'orange';
const co3 = 'white';
A teraz dosadíme premenné
s hodnotami štýlov. Poďme
to urobiť pre prvý odsek. Vložme
premenné co1 a fw1
namiesto hodnôt v objekte:
<p style = {{ color: co1, fontWeight: fw1 }}>
text
</p>
Podobným spôsobom postupujme s ostatnými značkami.
Výsledne náš kód komponentu bude vyzerať takto:
function App() {
const wd1 = '200px';
const br1 = '2px solid brown';
const pd1 = '10px';
const ta1 = 'center';
const co1 = 'orangered';
const fw1 = 'bold';
const fs1 = 'italic';
const co2 = 'brown';
const bco1 = 'orange';
const co3 = 'white';
return (
<div style = {{
width: wd1,
border: br1,
padding: pd1,
textAlign: ta1 }}>
<p style = {{ color: co1, fontWeight: fw1 }}>
text
</p>
<p style = {{ fontStyle: fs1, color: co2 }}>
text
</p>
<p style = {{
backgroundColor: bco1,
fontWeight: fw1,
color: co3 }}>
text
</p>
</div>
);
}
Upravte kód riešenia úlohy k minulej lekcii tak, aby hodnoty CSS vlastností boli uložené v premenných.