Главная страница>Учебник по веб-дизайну>Учебник по Javascript

Эта статья даст вам более глубокое понимание React Hooks!

Автор:Eve Cole Время обновления:2022-08-26 17:15:48
) }

Приведенный выше код создает объект ref с именем переменной timer с помощью useRef. Этот объект можно вызывать при рендеринге между компонентами, создавать новый таймер при запуске отсчета времени и очищать таймер при приостановке отсчета времени.

6. useContext

useContext используется для получения объекта контекста и возврата значения контекста, что позволяет обеспечить межуровневое совместное использование данных.

Пример следующий:

//Создаем объект контекста const MyContext = React.createContext(initialValue)
функция Приложение() {
  возвращаться (
    // Передаем значение контекста через Context.Provider 
      <Контейнер />
    
  )
}

функция Контейнер() {
  вернуть <Тест />
}

функция Тест() {
  // Получаем значение Context const theme = useContext(MyContext) // 1
  вернуть 
}

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

7. useReducer

useReducer используется для представления функции редуктора.

Пример следующий:

const [состояние, диспетчеризация] = useReducer(reducer, InitialState)

Он принимает функцию Редуктор и начальное значение состояния в качестве параметров и возвращает массив. Первый член массива — это текущее значение состояния, а второй член — это функция отправки, которая отправляет действие.

5. Настраиваемые хуки

. С помощью настраиваемых хуков логику компонента можно извлечь в повторно используемые функции.

1. Как создавать собственные хуки?

Пользовательские хуки — это функции, которые имеют две характеристики, отличающие их от обычных функций:

Пример следующий:

import { useState, useCallback } from 'react'

функция useCounter() {
  // Определить счетчик, это состояние используется для сохранения текущего значения const [count, setCount] = useState(0)
  // Реализуем операцию добавления 1 константного приращения = useCallback(() => setCount(count + 1), [count])
  // Реализуем операцию уменьшения на 1 const decrement = useCallback(() => setCount(count - 1), [count])
  //Сбрасываем счетчик const reset = useCallback(() => setCount(0), [])

  // Экспортируем операции бизнес-логики для использования вызывающей стороной return { count, инкремент, декремент, сброс }
}

// компонент 1
функция MyComponent1() {
  const { count, инкремент, декремент, сброс } = useCounter()
}

// компонент 2
функция MyComponent2() {
  const { count, инкремент, декремент, сброс } = useCounter()
}

Приведенный выше код легко повторно использует бизнес-логику между компонентами MyComponent1 и MyComponent2 путем настройки перехватчиков useCounter.

2. Библиотека пользовательских хуков — реагирование на использование

React официально предоставляет библиотеку реагирования, которая инкапсулирует большое количество пользовательских хуков, которые можно использовать напрямую, что помогает нам упростить внутреннюю логику компонентов и улучшить читаемость и удобство обслуживания кода.

Среди них наиболее часто используемые пользовательские перехватчики:

Вы можете зайти на официальный сайт реакции-использования, чтобы узнать, как его использовать.

6. Резюме

В этой статье React Hooks рассматривается с четырех аспектов: что такое Hooks, зачем их использовать, какие общие Hooks предоставляет React и как настраивать React Hooks. Я считаю, что каждый имеет более глубокое понимание React Hooks.

Надеюсь, это вам поможет, спасибо, что читаете~