Infoga data i style-attributet från ett objekt i React

CSS-stilar kan också läggas till på element med hjälp av attributet style. I denna och flera efterföljande lektioner kommer vi att undersöka metoder för inline-styling.

Nu kommer vi inte att inkludera filen styles.css, utan istället skicka motsvarande värden till attributet style i form av ett objekt med stilar för varje tagg, som vi kommer att skriva direkt i komponentfilen.

Så, låt oss ta vår komponent utan CSS-stilar, som vi gjorde i förra lektionen:

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

Låt oss i filen App.js före kommandot return skapa ett objekt med CSS-stilar för div-en i variabeln class1. Kom ihåg att egenskapsnamnen här skrivs i camelCase notation, och egenskapsvärden måste sättas inom citattecken:

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

Låt oss nu lägga till objektet class2 med stilar för det första stycket:

App.jsconst class2 = {
  color: 'orangered',
  fontWeight: 'bold'
}

Objektet class3 med stilar för det andra stycket:

App.jsconst class3 = {
  fontStyle: 'italic',
  color: 'brown',
}

Och slutligen class4 för det sista:

App.jsconst class4 = {
  backgroundColor: 'orange',
  fontWeight: 'bold',
  color: 'white',
}     

För att tillämpa CSS-klasserna i komponenten använder vi oss av attributet style. För det första stycket hade vi variabeln class2, låt oss skicka den som ett värde:

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

På liknande sätt lägger vi till stilar från objekten för de återstående taggarna.

Som ett resultat kommer komponentkoden att se ut på följande sätt:

App.jsfunction App() {
  const 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',
  };

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

Ta React-komponenten som du gjorde i uppgiften till förra lektionen, skapa objekt med CSS-stilar till dina taggar, och sätt in dem i motsvarande attribut style.