Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Tillämpning av Extern CSS i Praktiken | Stilmönster i React-Applikationer
React Mastery

bookTillämpning av Extern CSS i Praktiken

Vi övar genom att skapa en kortkomponent bestående av tre komponenter. Målet är att använda olika komponenter och applicera stilar för att göra den visuellt tilltalande. Vi går igenom stegen för att uppnå detta.

Innan vi börjar undersöker vi funktionen hos den speciella propen children, som gör det möjligt att skicka komponenter, element eller text som barn. Så här fungerar det:

const App = () => (
  <Container>
    <Notification />
    <Message />
  </Container>
);

Container-komponenten inkluderar en children-prop, som kommer att innehålla Notification- och Message-komponenterna. Allt innehåll som placeras mellan öppnings- och sluttaggarna för Container-komponenten behandlas som dess barn.

Container-komponenten har följande kod:

const Container = (props) => (
  <div>{props.children}</div>
);

Notera

Enkla props definieras och nås uttryckligen med sina specifika namn i en komponent. children-propen gör det däremot möjligt att skicka komponenter, element eller text som barn till en komponent utan att uttryckligen definiera ett prop-namn. Den representerar innehållet mellan öppnings- och sluttaggarna för komponenten.

Vi kan börja.

Steg 1

Vi skapar alla nödvändiga komponenter: Container, UserImage och UserInfo. Bygg hela appen genom att inkludera dessa komponenter i App-komponenten.

Exempel:

// `Container` component to hold `UserImage` and `UserInfo`
const Container = (props) => (
  <div>{props.children}</div>
);

// `UserImage` component to display user image
const UserImage = () => (
  <img
    className="image"
    src="https://codefinity-content-media.s3.eu-west-1.amazonaws.com/code-1/react/styling/user.png"
    alt="user"
    width={200}
  />
);

// `UserInfo` component to display user information
const UserInfo = (props) => (
  <div>
    <p>
      <span>Name:</span> {props.name}
    </p>
    <p>
      <span>Age:</span> {props.age}
    </p>
    <p>
      <span>Occupation:</span> {props.occupation}
    </p>
  </div>
);

// `App` component that combines `Container`, `UserImage`, and `UserInfo`
const App = () => (
  <Container>
    <UserImage />
    <UserInfo name="Michelle" age="36 years" occupation="Accountant" />
  </Container>
);

Steg 2

Säkerställ att alla nödvändiga klassnamn läggs till på elementen med attributet className.

// `Container` component to hold `UserImage` and `UserInfo`
const Container = (props) => <div className="container">{props.children}</div>;

// `UserImage` component to display user image
const UserImage = () => (
  <img
    className="image"
    src="https://codefinity-content-media.s3.eu-west-1.amazonaws.com/code-1/react/styling/user.png"
    alt="user"
    width={200}
  />
);

// `UserInfo` component to display user information
const UserInfo = (props) => (
  <div className="description">
    <p className="text">
      <span className="label">Name:</span> {props.name}
    </p>
    <p className="text">
      <span className="label">Age:</span> {props.age}
    </p>
    <p className="text">
      <span className="label">Occupation:</span> {props.occupation}
    </p>
  </div>
);

// `App` component that combines `Container`, `UserImage`, and `UserInfo`
const App = () => (
  <Container>
    <UserImage />
    <UserInfo name="Michelle" age="36 years" occupation="Accountant" />
  </Container>
);

Steg 3

Importera CSS-filen i filen som innehåller alla komponenter. Detta görs högst upp i filen.

import "./index.css"; // Importing the CSS file

Steg 4

Slutligen har vi friheten att tillämpa vilka stilar vi vill enligt våra preferenser.

/* Styling for the `Container` component */
.container {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px;
  border: 3px solid #4f5e77;
  border-radius: 10px;
  width: 320px;
  background-color: #ff8a00;
}

/* Styling for the `UserImage` component */
.image {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 20px;
}

/* Styling for the `UserInfo` component text */
.text {
  font-size: 22px;
  color: #bbdefb;
}

/* Styling for the `UserInfo` component label */
.label {
  font-size: 28px;
  font-weight: 700;
  text-transform: uppercase;
  color: #4f5e77;
}

Fullständig appkod:

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 6

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you explain how the `children` prop works in more detail?

What would the code look like if I wanted to add more user information?

How can I customize the styles further?

Awesome!

Completion rate improved to 2.17

bookTillämpning av Extern CSS i Praktiken

Svep för att visa menyn

Vi övar genom att skapa en kortkomponent bestående av tre komponenter. Målet är att använda olika komponenter och applicera stilar för att göra den visuellt tilltalande. Vi går igenom stegen för att uppnå detta.

Innan vi börjar undersöker vi funktionen hos den speciella propen children, som gör det möjligt att skicka komponenter, element eller text som barn. Så här fungerar det:

const App = () => (
  <Container>
    <Notification />
    <Message />
  </Container>
);

Container-komponenten inkluderar en children-prop, som kommer att innehålla Notification- och Message-komponenterna. Allt innehåll som placeras mellan öppnings- och sluttaggarna för Container-komponenten behandlas som dess barn.

Container-komponenten har följande kod:

const Container = (props) => (
  <div>{props.children}</div>
);

Notera

Enkla props definieras och nås uttryckligen med sina specifika namn i en komponent. children-propen gör det däremot möjligt att skicka komponenter, element eller text som barn till en komponent utan att uttryckligen definiera ett prop-namn. Den representerar innehållet mellan öppnings- och sluttaggarna för komponenten.

Vi kan börja.

Steg 1

Vi skapar alla nödvändiga komponenter: Container, UserImage och UserInfo. Bygg hela appen genom att inkludera dessa komponenter i App-komponenten.

Exempel:

// `Container` component to hold `UserImage` and `UserInfo`
const Container = (props) => (
  <div>{props.children}</div>
);

// `UserImage` component to display user image
const UserImage = () => (
  <img
    className="image"
    src="https://codefinity-content-media.s3.eu-west-1.amazonaws.com/code-1/react/styling/user.png"
    alt="user"
    width={200}
  />
);

// `UserInfo` component to display user information
const UserInfo = (props) => (
  <div>
    <p>
      <span>Name:</span> {props.name}
    </p>
    <p>
      <span>Age:</span> {props.age}
    </p>
    <p>
      <span>Occupation:</span> {props.occupation}
    </p>
  </div>
);

// `App` component that combines `Container`, `UserImage`, and `UserInfo`
const App = () => (
  <Container>
    <UserImage />
    <UserInfo name="Michelle" age="36 years" occupation="Accountant" />
  </Container>
);

Steg 2

Säkerställ att alla nödvändiga klassnamn läggs till på elementen med attributet className.

// `Container` component to hold `UserImage` and `UserInfo`
const Container = (props) => <div className="container">{props.children}</div>;

// `UserImage` component to display user image
const UserImage = () => (
  <img
    className="image"
    src="https://codefinity-content-media.s3.eu-west-1.amazonaws.com/code-1/react/styling/user.png"
    alt="user"
    width={200}
  />
);

// `UserInfo` component to display user information
const UserInfo = (props) => (
  <div className="description">
    <p className="text">
      <span className="label">Name:</span> {props.name}
    </p>
    <p className="text">
      <span className="label">Age:</span> {props.age}
    </p>
    <p className="text">
      <span className="label">Occupation:</span> {props.occupation}
    </p>
  </div>
);

// `App` component that combines `Container`, `UserImage`, and `UserInfo`
const App = () => (
  <Container>
    <UserImage />
    <UserInfo name="Michelle" age="36 years" occupation="Accountant" />
  </Container>
);

Steg 3

Importera CSS-filen i filen som innehåller alla komponenter. Detta görs högst upp i filen.

import "./index.css"; // Importing the CSS file

Steg 4

Slutligen har vi friheten att tillämpa vilka stilar vi vill enligt våra preferenser.

/* Styling for the `Container` component */
.container {
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px;
  border: 3px solid #4f5e77;
  border-radius: 10px;
  width: 320px;
  background-color: #ff8a00;
}

/* Styling for the `UserImage` component */
.image {
  display: block;
  max-width: 100%;
  height: auto;
  margin-bottom: 20px;
}

/* Styling for the `UserInfo` component text */
.text {
  font-size: 22px;
  color: #bbdefb;
}

/* Styling for the `UserInfo` component label */
.label {
  font-size: 28px;
  font-weight: 700;
  text-transform: uppercase;
  color: #4f5e77;
}

Fullständig appkod:

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 6
some-alt