Redux: Penyelesaian Pengurusan Negeri yang Perkasa
Redux ialah perpustakaan JavaScript popular yang sering digandingkan dengan React untuk mengurus keadaan aplikasi secara boleh diramalkan. Ia menyediakan "stor" berpusat untuk memegang dan mengurus data aplikasi, memudahkan kemas kini keadaan dan menjadikan penyahpepijatan lebih mudah. Redux bersinar dalam aplikasi dengan:
Prinsip Redux Teras
Redux beroperasi pada tiga prinsip asas:
Bagaimana Redux Berfungsi
Redux menggunakan lima komponen utama:
Contoh Ilustrasi: Kaunter Redux
Mari bina aplikasi kaunter mudah menggunakan Redux:
Langkah 1: Pemasangan
Pasang pakej yang diperlukan:
npm install redux react-redux
Langkah 2: Persediaan Redux
actions.js
):// actions.js export const increment = () => ({ type: 'INCREMENT' }); export const decrement = () => ({ type: 'DECREMENT' });
reducer.js
):// reducer.js const initialState = { count: 0 }; const counterReducer = (state = initialState, action) => { switch (action.type) { case 'INCREMENT': return { ...state, count: state.count + 1 }; case 'DECREMENT': return { ...state, count: state.count - 1 }; default: return state; } }; export default counterReducer;
store.js
):// store.js import { createStore } from 'redux'; import counterReducer from './reducer'; const store = createStore(counterReducer); export default store;
Langkah 3: Penyepaduan Reaksi
index.js
): Balut apl anda dengan Provider
untuk menjadikan kedai boleh diakses:// index.js import React from 'react'; import ReactDOM from 'react-dom'; import { Provider } from 'react-redux'; import store from './store'; import App from './App'; ReactDOM.render( <Provider store={store}><App /></Provider>, document.getElementById('root') );
App.js
): Gunakan useSelector
dan useDispatch
:// App.js import React from 'react'; import { useSelector, useDispatch } from 'react-redux'; import { increment, decrement } from './actions'; function App() { const count = useSelector(state => state.count); const dispatch = useDispatch(); return ( <div> <h1>Counter: {count}</h1> <button onClick={() => dispatch(increment())}>Increment</button> <button onClick={() => dispatch(decrement())}>Decrement</button> </div> ); } export default App;
Cara Kaunter Berfungsi
count: 0
). increment
atau decrement
tindakan. useSelector
dalam komponen. kelebihan redux
Kesimpulan
Redux menawarkan pendekatan yang teguh dan berstruktur kepada pengurusan negeri, terutamanya bermanfaat untuk aplikasi reaksi berskala besar. Keadaan terpusat, kemas kini yang boleh diramalkan, dan sokongan untuk senario kompleks menjadikannya alat yang berkuasa untuk membina aplikasi yang boleh dipelihara dan berskala.
Atas ialah kandungan terperinci Memahami Redux: Konsep Teras Di Sebalik Pengurusan Negeri yang Berkuasa. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!