Убацивање података у атрибут style из одвојене датотеке у React-у

Можемо да не пишемо објекте са стиловима у датотеци са компонентом, као у претходној лекцији, већ да креирамо одвојену датотеку са нашим објектима стилова и да их увеземо у потребну компоненту.

Дакле, узмимо нашу компоненту без CSS стилова:

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

Хајде да креирамо у фасцикли src одвојену датотеку styles.js, у којој ћемо написати наше објекте са стиловима:

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',
};

Не заборавимо да на дну датотеке styles.js извеземо наше објекте као један објекат styles:

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

Сада увезимо објекат styles у нашу компоненту:

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

Сада можемо да применимо потребан нам објекат са CSS стиловима из заједничког објекта styles на наше тагове. Применимо на први пасус стилове из објекта class2:

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

На сличан начин додајмо стилове из објеката преосталим таговима.

Као резултат, код компоненте ће изгледати на следећи начин:

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

Узмите React компоненту коју сте правили у задатку за прошлу лекцију. Креирајте одвојену датотеку styles.js, у којој ће бити објекти CSS стилова за ваше тагове, извезете их као један објекат, примените стилове на вашу React компоненту.