Обновление экрана

ReactReactBeginner
Практиковаться сейчас

This tutorial is from open-source community. Access the source code

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

Добро пожаловать в документацию по React! В этом практическом занятии вы познакомитесь с обновлением экрана.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL react(("React")) -.-> react/FundamentalsGroup(["Fundamentals"]) react(("React")) -.-> react/AdvancedConceptsGroup(["Advanced Concepts"]) react(("React")) -.-> react/StateManagementGroup(["State Management"]) react/FundamentalsGroup -.-> react/jsx("JSX") react/FundamentalsGroup -.-> react/components_props("Components and Props") react/FundamentalsGroup -.-> react/event_handling("Handling Events") react/AdvancedConceptsGroup -.-> react/hooks("React Hooks") react/StateManagementGroup -.-> react/use_state_reducer("Using useState and useReducer") subgraph Lab Skills react/jsx -.-> lab-100374{{"Обновление экрана"}} react/components_props -.-> lab-100374{{"Обновление экрана"}} react/event_handling -.-> lab-100374{{"Обновление экрана"}} react/hooks -.-> lab-100374{{"Обновление экрана"}} react/use_state_reducer -.-> lab-100374{{"Обновление экрана"}} end

Обновление экрана

Виртуальная машина уже содержит проект React. В общем случае вам нужно только добавить код в App.js.

Для установки зависимостей используйте следующую команду:

npm i

Часто вы будете хотеть, чтобы ваш компонент "помнил" какую-то информацию и отображал ее. Например, вы можете захотеть подсчитывать количество нажатий на кнопку. Для этого добавьте состояние в ваш компонент.

Во - первых, импортируйте useState из React:

import { useState } from "react";

Теперь вы можете объявить переменную состояния внутри вашего компонента:

function MyButton() {
  const [count, setCount] = useState(0);
  //...

Из useState вы получите два значения: текущее состояние (count) и функцию, которая позволяет вам обновить его (setCount). Вы можете дать им любые имена, но по соглашению пишут [что - то, setЧто - то].

В первый раз, когда кнопка отображается, count будет равняться 0, потому что вы передали 0 в useState(). Когда вы хотите изменить состояние, вызовите setCount() и передайте ей новое значение. Нажатие на эту кнопку увеличит счетчик:

function MyButton() {
  const [count, setCount] = useState(0);

  function handleClick() {
    setCount(count + 1);
  }

  return <button onClick={handleClick}>Clicked {count} times</button>;
}

React вызовет функцию вашего компонента снова. На этот раз count будет равняться 1. Затем 2, и так далее.

Если вы рендерите один и тот же компонент несколько раз, каждый из них будет иметь свое собственное состояние. Нажмите на каждую кнопку отдельно:

// App.js
import { useState } from "react";

export default function MyApp() {
  return (
    <div>
      <h1>Counters that update separately</h1>
      <MyButton />
      <MyButton />
    </div>
  );
}

function MyButton() {
  const [count, setCount] = useState(0);

  function handleClick() {
    setCount(count + 1);
  }

  return <button onClick={handleClick}>Clicked {count} times</button>;
}

Заметьте, как каждая кнопка "помнит" свое собственное состояние count и не влияет на другие кнопки.

Для запуска проекта используйте следующую команду. Затем вы можете обновить вкладку Web 8080, чтобы просмотреть веб - страницу.

npm start

Резюме

Поздравляем! Вы завершили практическое занятие по обновлению экрана. Вы можете попробовать еще несколько практических занятий в LabEx, чтобы улучшить свои навыки.