Redux DevTools কনফিগার করা এবং ব্যবহার

Redux DevTools এবং Debugging Techniques - রিডাক্স (Redux) - Web Development

262

Redux DevTools একটি গুরুত্বপূর্ণ ডেভেলপমেন্ট টুল, যা Redux স্টোরের পরিবর্তন এবং অ্যাকশনের ইতিহাস ট্র্যাক করতে সহায়ক। এটি একটি ব্রাউজার এক্সটেনশন হিসেবে কাজ করে এবং ডেভেলপারদের Redux অ্যাপ্লিকেশনগুলোকে পর্যবেক্ষণ এবং ডিবাগ করতে সাহায্য করে। Redux DevTools ব্যবহার করার মাধ্যমে আপনি স্টোরের স্টেট, ডিসপ্যাচ করা অ্যাকশন, এবং স্টেটের পরিবর্তন দেখতে পারেন।

Redux DevTools কে কনফিগার করা এবং ব্যবহার করা বেশ সহজ, এবং এটি প্রকল্পের উন্নয়ন প্রক্রিয়াতে অনেক সুবিধা দেয়।


Redux DevTools কনফিগার করা

Redux DevTools ব্যবহারের জন্য, আপনাকে প্রথমে Redux স্টোরের কনফিগারেশন সংশোধন করতে হবে। আপনি যদি Redux স্টোর তৈরি করার সময় configureStore ব্যবহার করেন, তবে Redux DevTools সাপোর্ট স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত হয়ে যায়। তবে যদি আপনি createStore ব্যবহার করেন, তাহলে Redux DevTools অন্তর্ভুক্ত করতে বিশেষভাবে কনফিগারেশন করতে হবে।


1. Redux DevTools কনফিগারেশন (React App-এ)

configureStore ব্যবহার করলে

Redux Toolkit-এর configureStore ব্যবহার করলে Redux DevTools সাপোর্ট স্বয়ংক্রিয়ভাবে চলে আসে। আপনি এর সাথে কিছু অতিরিক্ত কনফিগারেশন ছাড়াই DevTools ব্যবহার করতে পারবেন।

// store.js
import { configureStore } from '@reduxjs/toolkit';
import counterReducer from './counterSlice';

const store = configureStore({
  reducer: {
    counter: counterReducer,
  },
});

export default store;

এখানে:

  • configureStore ফাংশনটি Redux DevTools কনফিগারেশন সরবরাহ করে, ফলে আপনি আলাদা কোনো কনফিগারেশন ছাড়াই DevTools ব্যবহার করতে পারবেন।

createStore ব্যবহার করলে

যদি আপনি createStore ব্যবহার করেন, তাহলে Redux DevTools সঠিকভাবে কনফিগার করতে আপনাকে window.__REDUX_DEVTOOLS_EXTENSION__ ব্যবহার করতে হবে। এটি একটি ফাংশন যা DevTools এক্সটেনশনের সাথে সংযোগ স্থাপন করে।

// store.js
import { createStore } from 'redux';
import rootReducer from './reducers';

const store = createStore(
  rootReducer,
  window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
);

export default store;

এখানে:

  • window.__REDUX_DEVTOOLS_EXTENSION__ ব্যবহার করে Redux DevTools কনফিগার করা হয়েছে, যাতে ডেভেলপাররা ব্রাউজারের DevTools এক্সটেনশন ব্যবহার করতে পারেন।

2. Redux DevTools ব্রাউজার এক্সটেনশন ইনস্টল করা

Redux DevTools ব্যবহার করার জন্য, আপনাকে Redux DevTools Browser Extension ইনস্টল করতে হবে। এটি Chrome বা Firefox ব্রাউজারের জন্য উপলব্ধ।

একবার এক্সটেনশনটি ইনস্টল করার পর, আপনার ব্রাউজারের ডেভেলপার টুলস-এ Redux ট্যাবটি দেখা যাবে। এর মাধ্যমে আপনি Redux স্টোরের স্টেট, অ্যাকশন এবং অন্যান্য ডেটা দেখতে পারবেন।


3. Redux DevTools ব্যবহার করা

Redux DevTools এর মাধ্যমে আপনি নিম্নলিখিত কাজগুলো করতে পারবেন:

  • স্টেট চেঞ্জ দেখা: আপনি স্টোরের অবস্থা (state) দেখতে পারবেন এবং এটি কোন অ্যাকশন দ্বারা পরিবর্তিত হয়েছে তা ট্র্যাক করতে পারবেন।
  • অ্যাকশন লগ করা: আপনার অ্যাপ্লিকেশন যে সমস্ত অ্যাকশন ডিপ্লে করেছে তা দেখতে পারবেন।
  • স্টেপ-বাই-স্টেপ রিভার্স ট্র্যাকিং: আপনি আগের অ্যাকশনগুলির দিকে ফিরে গিয়ে দেখে নিতে পারবেন কীভাবে স্টেট পরিবর্তন হয়েছে।
  • Time Travel Debugging: স্টেটের পূর্ববর্তী অবস্থায় ফিরে যাওয়া এবং আবার বর্তমান অবস্থায় ফিরে আসা সম্ভব।
  • Export and Import State: স্টেট এক্সপোর্ট এবং ইম্পোর্ট করতে পারবেন, যা আপনাকে অ্যাপ্লিকেশনের ডেটা শেয়ার করতে সহায়ক।
  • Actions and State History: সমস্ত অ্যাকশন এবং স্টেটের ইতিহাস দেখতে পারবেন।

4. Redux DevTools-এর বিশেষ ফিচার

Time Travel Debugging

DevTools এর সবচেয়ে শক্তিশালী বৈশিষ্ট্য হল Time Travel Debugging, যা আপনাকে স্টেটের পূর্ববর্তী অবস্থায় ফিরে যাওয়ার সুবিধা দেয়। আপনি যতবার অ্যাকশন ডিসপ্যাচ করবেন, Redux DevTools সেই অ্যাকশন এবং তার ফলস্বরূপ স্টেট সঞ্চিত রাখবে। আপনি পূর্ববর্তী অ্যাকশনগুলো দেখতে পারেন এবং প্রয়োজন হলে পুনরায় অ্যাকশনটি ট্রিগার করতে পারেন।

Export এবং Import State

Redux DevTools আপনাকে স্টেট এক্সপোর্ট এবং ইম্পোর্ট করার সুযোগ দেয়। এটি খুবই উপকারী যখন আপনি একটি নির্দিষ্ট স্টেটে ফিরে যেতে চান বা অন্য কোনো ডেভেলপারকে আপনার স্টেট পাঠাতে চান।

  • Export State: আপনি অ্যাপ্লিকেশনের বর্তমান স্টেট JSON ফাইল হিসেবে এক্সপোর্ট করতে পারেন।
  • Import State: আপনি একটি স্টেট JSON ফাইল ইম্পোর্ট করতে পারেন, যা আপনাকে সেই নির্দিষ্ট অবস্থায় অ্যাপ্লিকেশনটি ফিরিয়ে আনতে সাহায্য করবে।

5. Redux DevTools এর কনফিগারেশন কাস্টমাইজ করা

আপনি Redux DevTools-এর কনফিগারেশন কাস্টমাইজ করতে পারেন, যেমন অতিরিক্ত ফিচার সক্রিয় করা, ডিবাগging পদ্ধতি পরিবর্তন করা, বা অ্যাকশনগুলির ফিল্টারিং করা।

// store.js
import { configureStore } from '@reduxjs/toolkit';
import counterReducer from './counterSlice';

const store = configureStore({
  reducer: {
    counter: counterReducer,
  },
  devTools: {
    name: 'MyApp', // DevTools নাম কাস্টমাইজ করা
    trace: true,   // স্টেট পরিবর্তন ট্র্যাকিং চালু করা
  }
});

export default store;

এখানে:

  • devTools কনফিগারেশন ব্যবহার করে আপনি Redux DevTools এর নাম এবং অন্যান্য সেটিংস কাস্টমাইজ করতে পারেন।

সারাংশ

Redux DevTools একটি শক্তিশালী টুল যা ডেভেলপারদের Redux অ্যাপ্লিকেশন ডিবাগ এবং স্টেট মনিটর করতে সহায়তা করে। Redux DevTools কনফিগার করা অত্যন্ত সহজ, এবং Redux Toolkit ব্যবহার করলে এটি স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত হয়। আপনি Redux স্টোরের মধ্যে যেকোনো স্টেট পরিবর্তন দেখতে এবং আগের অ্যাকশনের উপর ভিত্তি করে অ্যাপ্লিকেশনটি ডিবাগ করতে পারবেন। DevTools এর মাধ্যমে Time Travel Debugging, Export/Import State, এবং Action History-এর মত ফিচারগুলোর সাহায্যে Redux অ্যাপ্লিকেশন ডিবাগ করা সহজ হয়।

Content added By
Promotion

Are you sure to start over?

Loading...