Redux को व्यापक रूप से जावास्क्रिप्ट अनुप्रयोगों के लिए डिज़ाइन की गई एक मजबूत राज्य प्रबंधन लाइब्रेरी के रूप में मान्यता प्राप्त है, जिसे अक्सर लोकप्रिय फ्रेमवर्क रिएक्ट के साथ मिलकर उपयोग किया जाता है। एक भरोसेमंद स्टेट कंटेनर की पेशकश करके, Redux एक ठोस आधार स्थापित करता है जो एप्लिकेशन स्टेट्स को संभालने और समस्या निवारण के कार्य को बहुत सरल बनाता है। यह मार्गदर्शिका Redux में शामिल मूलभूत घटकों पर गहराई से प्रकाश डालती है, प्रत्येक तत्व की विस्तृत व्याख्या प्रदान करती है और दर्शाती है कि वे एप्लिकेशन की समग्र कार्यक्षमता को सुव्यवस्थित करने के लिए कैसे सहक्रियात्मक रूप से परस्पर क्रिया करते हैं। इस गहन अन्वेषण का उद्देश्य Redux की आंतरिक कार्यप्रणाली को स्पष्ट करना, डेवलपर्स को इस राज्य प्रबंधन उपकरण की जटिलताओं को समझने और अपनी परियोजनाओं में इसकी क्षमताओं का प्रभावी ढंग से उपयोग करने के लिए सशक्त बनाना है।
Redux एक यूनिडायरेक्शनल डेटा प्रवाह मॉडल का अनुसरण करता है और तीन मुख्य सिद्धांतों पर आधारित है:
सबसे पहले, Redux और React-Redux इंस्टॉल करें:
npm install redux react-redux @reduxjs/toolkit
यह कमांड कोर Redux लाइब्रेरी, Redux के लिए रिएक्ट बाइंडिंग और Redux टूलकिट स्थापित करता है, जो स्टोर स्थापित करने और स्लाइस बनाने जैसे कई सामान्य कार्यों को सरल बनाता है।
क्रियाएँ जानकारी के पेलोड हैं जो आपके एप्लिकेशन से डेटा को आपके Redux स्टोर पर भेजती हैं। क्रिया प्रकार स्थिरांक हैं जो क्रिया का प्रतिनिधित्व करते हैं।
export const INCREMENT = "INCREMENT"; export const DECREMENT = "DECREMENT"; export const INCREMENT_BY_VALUE = "INCREMENT_BY_VALUE"; export const RESET = "RESET"; export const increment = () => ({ type: INCREMENT }); export const decrement = () => ({ type: DECREMENT }); export const incrementByValue = (value) => ({ type: INCREMENT_BY_VALUE, payload: value, }); export const reset = () => ({ type: RESET });
क्रियाओं और क्रिया प्रकारों को स्पष्ट रूप से परिभाषित करने से निरंतरता बनाए रखने में मदद मिलती है और आपके एप्लिकेशन में त्रुटियां कम हो जाती हैं।
रेड्यूसर निर्दिष्ट करते हैं कि स्टोर पर भेजे गए कार्यों के जवाब में एप्लिकेशन की स्थिति कैसे बदलती है। स्लाइस आपके ऐप के एकल फीचर के लिए Redux रिड्यूसर तर्क और क्रियाओं का एक संग्रह है, जो Redux टूलकिट की createSlice पद्धति का उपयोग करके बनाया गया है।
import { createSlice } from "@reduxjs/toolkit"; const initialState = { number: 0 }; const counterSlice = createSlice({ name: "counter", initialState, reducers: { increment: (state) => { state.number = 5; }, decrement: (state) => { state.number = Math.max(0, state.number - 5); }, incrementByValue: (state, action) => { state.number = action.payload; }, reset: (state) => { state.number = 0; }, }, }); export const { increment, decrement, incrementByValue, reset } = counterSlice.actions; export default counterSlice.reducer;
एकाधिक स्लाइस को संयोजित करने के लिए:
import { combineReducers } from "@reduxjs/toolkit"; import counterReducer from "../slices/counterSlice"; const rootReducer = combineReducers({ counter: counterReducer, }); export default rootReducer;
स्टोर वह वस्तु है जो क्रियाओं और रिड्यूसर को एक साथ लाती है। यह एप्लिकेशन स्थिति रखता है, getState() के माध्यम से उस तक पहुंच की अनुमति देता है, इसे डिस्पैच (एक्शन) के माध्यम से अपडेट करता है, और सब्सक्राइबर (श्रोता) के माध्यम से श्रोताओं को पंजीकृत करता है।
import { configureStore } from "@reduxjs/toolkit"; import rootReducer from "../reducers/rootReducer"; const store = configureStore({ reducer: rootReducer, }); export default store;
रिएक्ट घटकों को Redux स्टोर से कनेक्ट करने के लिए, स्टोर को अपने घटकों तक पहुंचाने के लिए रिएक्ट-रिडक्स से प्रदाता घटक का उपयोग करें, और स्थिति तक पहुंचने और हेरफेर करने के लिए उपयोग चयनकर्ता और उपयोग डिस्पैच हुक का उपयोग करें।
import React from "react"; import { Provider } from "react-redux"; import store from "./redux/store/store"; import Counter from "./components/Counter"; import MusCo from "./MusCo redux logo.png"; function App() { return (); } export default App; Practice Redux with MusCo
by Mustafa Coskuncelebi
import { useDispatch, useSelector } from "react-redux"; import { decrement, increment, incrementByValue, reset, } from "../slices/counterSlice"; import { useState, useEffect } from "react"; function Counter() { const [value, setValue] = useState(""); const dispatch = useDispatch(); const number = useSelector((state) => state.counter.number); useEffect(() => { const showcase = document.querySelector("#showcase"); if (numberCounter
{number}
{ let newValue = e.target.value.trim(); if (newValue === "") { newValue = ""; reset(); } if (/^\d*$/.test(newValue)) { setValue(newValue); } }} value={value} placeholder="Enter Value" />Counter cannot be less than 0
); } export default Counter;
Redux आपके अनुप्रयोगों में स्थिति के प्रबंधन के लिए एक शक्तिशाली लाइब्रेरी है। क्रियाओं, रिड्यूसर, स्टोर और हर चीज़ को अपने रिएक्ट घटकों से कैसे जोड़ा जाए, इसे समझकर, आप पूर्वानुमानित और रखरखाव योग्य एप्लिकेशन बना सकते हैं।
अधिक जानकारी के लिए, आधिकारिक Redux दस्तावेज़ देखें:
इस गाइड का पालन करके, आपको Redux की ठोस समझ होनी चाहिए और इसे अपने अनुप्रयोगों में लागू करने में सक्षम होना चाहिए।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3