Skip to content

ikramuzzaman455173/Redux-implement-reactjs-step-by-step

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 

Repository files navigation

ReactJS Redux Install & Use In Step By Step :)

Step 1: Install Dependencies

npm install react-redux @reduxjs/toolkit

Step 2: Create Redux Slice

In the Features folder, create a file named counterSlice.js:

// counterSlice.js

import { createSlice } from "@reduxjs/toolkit";

const initialState = {
  value: 0,
  menuOpen: true,
};

export const counterSlice = createSlice({
  name: "counter",
  initialState,
  reducers: {
    increment: (state) => {
      state.value += 1;
    },
    decrement: (state) => {
      state.value -= 1;
    },
    incrementByAmount: (state, action) => {
      state.value += action.payload;
    },
    toggleMenu: (state) => {
      state.menuOpen = !state.menuOpen;
    },
    setMenuOpen: (state, action) => {
      state.menuOpen = action.payload;
    },
  },
});

export const { increment, decrement, incrementByAmount, toggleMenu, setMenuOpen } = counterSlice.actions;

export default counterSlice.reducer;

Step 3: Create Redux Store

In the GlobalRedux folder, create a file named store.js:

// store.js

import { combineReducers, configureStore } from "@reduxjs/toolkit";
import counterReducer from "./Features/counterSlice";

const rootReducer = combineReducers({
  counter: counterReducer,
  // Add other reducers here
});

export const store = configureStore({
  reducer: rootReducer,
});

Step 4: Create Redux Provider

In the GlobalRedux folder, create a file named provider.js:

// provider.js

import React from "react";
import { Provider } from "react-redux";
import { store } from "./store";

export function ReduxProvider({ children }) {
  return <Provider store={store}>{children}</Provider>;
}

Step 5: Integrate Redux Provider in Your App

In your index.js or main.jsx file:

// main.jsx

import React from 'react';
import ReactDOM from 'react-dom';
import { ReduxProvider } from './GlobalRedux/provider';
import App from './App';

ReactDOM.createRoot(document.getElementById('root')).render(
  <ReduxProvider>
    <App />
  </ReduxProvider>
);

Step 6: Use Redux in Your Component

In your App.jsx (or any component where you want to use Redux):

// App.jsx

import React from 'react';
import { useDispatch, useSelector } from 'react-redux';
import { decrement, increment } from '../../GlobalRedux/Features/counterSlice';

const App = () => {
  const count = useSelector((state) => state.counter.value);
  const dispatch = useDispatch();

  return (
    <div>
      <button onClick={() => dispatch(increment())}>Increment</button>
      <span>{count}</span>
      <button onClick={() => dispatch(decrement())}>Decrement</button>
    </div>
  );
};

export default App;

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published