Устаўка даных у атрыбут style з зменных у React

У мінулым уроке мы пісалі аб'ект прама ў атрыбуце style. Мы таксама можам выкарыстоўваць устаўку даных у гэты аб'ект з зменных.

Давайце возьмем наш React кампанент без CSS стыляў:

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

Цяпер мы будзем ствараць зменныя і прысвойваць ім значэнні CSS уласцівасцей. Пачнем па-парадку са стыляў для дыва.

У файле кампанента перад камандай return створым зменную wd1 і прысвоім ёй значэнне '200px':

App.jsconst wd1 = '200px';

Падобным чынам створым зменныя для ўсіх значэнняў уласцівасцей нашага дыва:

App.jsconst wd1 = '200px';
const br1 = '2px solid brown';
const pd1 = '10px';
const ta1 = 'center';

Цяпер дадамо зменныя для першага абзаца:

App.jsconst co1 = 'orangered';
const fw1 = 'bold';

Для другога абзаца:

App.jsconst fs1 = 'italic';
const co2 = 'brown';

І, нарэшце, для апошняга. Тут спатрэбяцца толькі дзве, а не тры зменныя. Не мае сэнсу паўтарацца, бо значэнне bold у нас ужо ёсць для першага абзаца:

App.jsconst bco1 = 'orange';
const co3 = 'white';

А цяпер мы падставім зменныя са значэннямі стыляў. Давайце, зробім гэта для першага абзаца. Уставім зменныя co1 і fw1 замест значэнняў у аб'екце:

App.js<p style = {{ color: co1, fontWeight: fw1 }}>
  text
</p>

Падобным чынам паступім з астатнімі тэгамі.

У выніку наш код кампанента будзе выглядаць так:

App.jsfunction App() {

  //для div:
  const wd1 = '200px';
  const br1 = '2px solid brown';
  const pd1 = '10px';
  const ta1 = 'center';

  //для першага p:
  const co1 = 'orangered';
  const fw1 = 'bold';

  //для другога p:
  const fs1 = 'italic';
  const co2 = 'brown';
  
  //для трэцяга p:
  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>
  );
}
Задание 1

Мадыфікуйце код рашэння задачы да мінулага ўрока так, каб значэнні CSS уласцівасцей захоўваліся ў зменных.