Ubacivanje podataka u atribut style iz odvojene datoteke u React-u

Mi možemo da ne pišemo objekte sa stilovima u datoteci sa komponentom, kao u prošloj lekciji, već da kreiramo odvojenu datoteku sa našim objektima stilova i da ih importujemo u željenu komponentu.

Dakle, uzmimo našu komponentu bez CSS stilova:

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

Hajde da kreiramo u direktorijumu src odvojenu datoteku styles.js, u kojoj ćemo napisati naše objekte sa stilovima:

styles.jsconst class1 = {
  width: '200px',
  border: '2px solid brown',
  padding: '10px',
  textAlign: 'center',
};

const class2 = {
  color: 'orangered',
  fontWeight: 'bold',
};

const class3 = {
  fontStyle: 'italic',
  color: 'brown',
};

const class4 = {
  backgroundColor: 'orange',
  fontWeight: 'bold',
  color: 'white',
};

Ne zaboravimo na dnu datoteke styles.js da eksportujemo naše objekte kao jedan objekat styles:

styles.jsexport const styles = {
  class1: class1,
  class2: class2,
  class3: class3,
  class4: class4
};

Sada importujmo objekat styles u našu komponentu:

App.jsimport { styles } from "./styles";       

Sada možemo da primenimo potrebni objekat sa CSS stilovima iz zajedničkog objekta styles na naše tagove. Primenimo na prvi pasus stilove iz objekta class2:

App.js<p style={styles.class2}>text</p>

Na sličan način dodajmo stilove iz objekata ostalim tagovima.

Kao rezultat, kod komponente će izgledati na sledeći način:

App.jsfunction App() {
  return (
    <div style={styles.class1}>
      <p style={styles.class2}>text</p>
      <p style={styles.class3}>text</p>
      <p style={styles.class4}>text</p>
    </div>
  );
}  
Задание 1

Uzmite React komponentu koju ste pravili u zadatku za prošlu lekciju. Kreirajte odvojenu datoteku styles.js, u kojoj će biti objekti CSS stilova za vaše tagove, eksportujte ih kao jedan objekat, primenite stilove na vašu React komponentu.