Підключення Redux до Компонентів React
Теорія
Для встановлення зв'язку між компонентами React і сховищем Redux можна використовувати хук useSelector для доступу до стану та хук useDispatch для відправлення дій.
Практика
Тепер підключимо компонент Counter до сховища Redux.
import React from "react";
import { useSelector, useDispatch } from "react-redux";
import { increment, decrement } from "../redux/actions/counterAction";
const Counter = () => {
const counter = useSelector((state) => state.counter);
const dispatch = useDispatch();
const handleIncrement = () => {
dispatch(increment());
};
const handleDecrement = () => {
dispatch(decrement());
};
return (
<div>
<h2>Counter Value: {counter}</h2>
<button onClick={handleIncrement}>Increment</button>
<button onClick={handleDecrement}>Decrement</button>
</div>
);
};
export default Counter;
Пояснення коду:
- Рядок 2: Імпорт необхідних хуків
useSelectorтаuseDispatchз бібліотекиreact-redux. Ці хуки забезпечують зв'язок між React і Redux; - Рядок 3: Імпорт творців дій
incrementтаdecrementз файлу../redux/actions/counterAction. Ці дії будуть відправлені для оновлення стану лічильника у сховищі Redux; - Рядок 6: Хук
useSelectorвикористовується для доступу до стануcounterзі сховища Redux. Як аргумент передається селекторна функція, яка повертає потрібне значення стану; - Рядок 7: Хук
useDispatchвикористовується для доступу до функціїdispatchRedux. Він посилається на функціюdispatch, яка використовується для відправлення дій у сховище Redux; - Рядки 9-11: Визначення обробника події
handleIncrement, який викликається при натисканні кнопки "Increment". Усередині обробника за допомогою функціїincrementвідправляється діяdispatchу сховище Redux; - Рядки 13-15: Визначення обробника події
handleDecrement, який викликається при натисканні кнопки "Decrement". Усередині обробника за допомогою функціїdecrementвідправляється діяdispatchу сховище Redux; - Рядки 17-23: Відображення елементів JSX, включаючи поточне значення лічильника та кнопки для збільшення і зменшення. Відповідні обробники подій підключаються до атрибуту
onClickкнопок.
Примітка
Цей код підключає компонент React (
Counter) до Redux. ВикористовуєтьсяuseSelectorдля доступу до стану лічильника таuseDispatchдля відправлення дій з оновлення стану. Компонент відображає значення лічильника та надає кнопки для його збільшення і зменшення. Натискання на ці кнопки викликає дії, які оновлюють сховище Redux.
1. Як встановити зв'язок між компонентами React і сховищем Redux для доступу до стану?
2. Яке призначення хука useSelector у коді?
3. Що виконує функція handleDecrement при виклику?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат
Awesome!
Completion rate improved to 4.17
Підключення Redux до Компонентів React
Свайпніть щоб показати меню
Теорія
Для встановлення зв'язку між компонентами React і сховищем Redux можна використовувати хук useSelector для доступу до стану та хук useDispatch для відправлення дій.
Практика
Тепер підключимо компонент Counter до сховища Redux.
import React from "react";
import { useSelector, useDispatch } from "react-redux";
import { increment, decrement } from "../redux/actions/counterAction";
const Counter = () => {
const counter = useSelector((state) => state.counter);
const dispatch = useDispatch();
const handleIncrement = () => {
dispatch(increment());
};
const handleDecrement = () => {
dispatch(decrement());
};
return (
<div>
<h2>Counter Value: {counter}</h2>
<button onClick={handleIncrement}>Increment</button>
<button onClick={handleDecrement}>Decrement</button>
</div>
);
};
export default Counter;
Пояснення коду:
- Рядок 2: Імпорт необхідних хуків
useSelectorтаuseDispatchз бібліотекиreact-redux. Ці хуки забезпечують зв'язок між React і Redux; - Рядок 3: Імпорт творців дій
incrementтаdecrementз файлу../redux/actions/counterAction. Ці дії будуть відправлені для оновлення стану лічильника у сховищі Redux; - Рядок 6: Хук
useSelectorвикористовується для доступу до стануcounterзі сховища Redux. Як аргумент передається селекторна функція, яка повертає потрібне значення стану; - Рядок 7: Хук
useDispatchвикористовується для доступу до функціїdispatchRedux. Він посилається на функціюdispatch, яка використовується для відправлення дій у сховище Redux; - Рядки 9-11: Визначення обробника події
handleIncrement, який викликається при натисканні кнопки "Increment". Усередині обробника за допомогою функціїincrementвідправляється діяdispatchу сховище Redux; - Рядки 13-15: Визначення обробника події
handleDecrement, який викликається при натисканні кнопки "Decrement". Усередині обробника за допомогою функціїdecrementвідправляється діяdispatchу сховище Redux; - Рядки 17-23: Відображення елементів JSX, включаючи поточне значення лічильника та кнопки для збільшення і зменшення. Відповідні обробники подій підключаються до атрибуту
onClickкнопок.
Примітка
Цей код підключає компонент React (
Counter) до Redux. ВикористовуєтьсяuseSelectorдля доступу до стану лічильника таuseDispatchдля відправлення дій з оновлення стану. Компонент відображає значення лічильника та надає кнопки для його збільшення і зменшення. Натискання на ці кнопки викликає дії, які оновлюють сховище Redux.
1. Як встановити зв'язок між компонентами React і сховищем Redux для доступу до стану?
2. Яке призначення хука useSelector у коді?
3. Що виконує функція handleDecrement при виклику?
Дякуємо за ваш відгук!