Redux useSelector
사용하는 React 응용 프로그램에서는 기능 구성 요소의 상태를 관리하는 데 사용하기 위해 useDispatch
필수적입니다. 사용 방법은 다음과 같습니다.
UseELector Hook : useSelector
Hook는 Redux Store 상태에서 데이터를 추출하는 데 사용됩니다. 상태가 변경되면 Redux Store를 구독하고 자동으로 업데이트를받을 수 있습니다. 일반적으로 구성 요소에 필요한 상태 데이터를 읽는 데 사용합니다.
<code class="javascript">import { useSelector } from 'react-redux'; function MyComponent() { const count = useSelector(state => state.counter.value); // You can use the 'count' value within your component return <div>{count}</div>; }</code>
이 예에서, useSelector
추출하려는 상태의 어떤 부분을 지정하는 함수를 취합니다. Hook는 관련 상태가 변경 될 때 마다이 선택기 기능을 다시 실행하고 구성 요소는 업데이트 된 값으로 다시 렌더링됩니다.
UsedisPatch 후크 : useDispatch
후크는 Redux 스토어에서 dispatch
함수를 반환합니다. 이것을 사용하여 구성 요소에서 작업을 발송 할 수 있습니다.
<code class="javascript">import { useDispatch } from 'react-redux'; import { increment } from './counterSlice'; function MyComponent() { const dispatch = useDispatch(); return ( <button onclick="{()"> dispatch(increment())}> Increment </button> ); }</code>
이 경우 useDispatch
사용하면 dispatch
함수에 액세스 할 수 있으므로 Redux 스토어에 작업을 보낼 수 있습니다. 버튼을 클릭하면 increment
조치가 발산되어 동작 유형 및 페이로드에 따라 상태 변경이 발생합니다.
기능 구성 요소에서 useSelector
및 useDispatch
hooks를 사용하면 Connect () 함수와 같은 Redux를 사용하여 상태를 관리하는 다른 방법에 비해 몇 가지 이점이 제공됩니다.
connect()
함수의 복잡성과 MapStateToprops 및 MapDispatchtoprops 기능의 복잡성을 다룰 필요가 없습니다. 이것은 더 간결하고 읽을 수있는 코드로 이어집니다.useSelector
에는 성능 최적화가 내장되어 있습니다. 기본적으로 참조 평등 검사를 사용하므로 선택한 상태가 변경되지 않은 경우 불필요한 재 렌즈를 유발하지 않습니다.useEffect
, useState
등과 같은 다른 후크와 완벽하게 협력하여 지역 및 글로벌 상태를 효과적으로 관리 할 수 있습니다. 아래는 React 기능 구성 요소에서 useSelector
및 useDispatch
설정하고 사용하는 방법을 보여주는 간단한 예입니다.
<code class="javascript">import React from 'react'; import { useSelector, useDispatch } from 'react-redux'; import { increment, decrement } from './counterSlice'; // Assuming you have a slice defined in counterSlice.js function Counter() { // Extract the current count from the Redux store state const count = useSelector(state => state.counter.value); // Get the dispatch function to dispatch actions const dispatch = useDispatch(); return ( <div> <h2>Counter: {count}</h2> <button onclick="{()"> dispatch(increment())}>Increment</button> <button onclick="{()"> dispatch(decrement())}>Decrement</button> </div> ); } export default Counter;</code>
이 예에서 useSelector
Redux 스토어에서 count
를 추출하는 데 사용되며, useDispatch
dispatch
기능을 얻는 데 사용되며,이 경우 각 버튼을 클릭 할 때 increment
및 decrement
작업을 발송하는 데 사용됩니다.
useSelector
및 useDispatch
hooks를 사용하면 여러 가지 방법으로 REACT 애플리케이션의 성능에 크게 영향을 줄 수 있습니다.
useSelector
얕은 평등 점검을 사용하여 새로운 상태를 이전 상태와 비교하여 리 렌즈를 최적화합니다. 선택한 상태가 변경되지 않으면 구성 요소가 다시 렌더링되지 않아 성능이 향상됩니다.useSelector
관심있는 상태의 일부에만 가입하기 때문에 재 계산 및 재 렌더링 해야하는 데이터의 양을 최소화 할 수 있습니다.useMemo
또는 useCallback
과 같은 Memoization Techniques를 사용하여 useSelector
와 함께 성능을 더욱 최적화 할 수 있습니다. 이것은 불필요한 재 계산 및 재 렌즈를 방지 할 수 있습니다.useSelector
및 useDispatch
성능을 희생하지 않고 이러한 확장 성을 용이하게합니다. 요약하자면, useSelector
및 useDispatch
후크는 재 렌즈를 최적화하고 효율적인 상태 업데이트를 제공하며보다 간단하고 유지 관리 가능한 코드를 통해 확장 성을 지원하여 응용 프로그램의 성능을 향상시킬 수 있습니다.
위 내용은 Redux 스토어와 상호 작용하기 위해 기능 구성 요소에서 useELector 및 UsedISPatch 후크를 어떻게 사용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!