State কী?
ReactJS-এ state হল একটি কম্পোনেন্টের ডাটা বা অবস্থা, যা কম্পোনেন্টের ভিতরে সংরক্ষিত থাকে এবং UI রেন্ডারিংকে প্রভাবিত করে। প্রতিটি React কম্পোনেন্টের নিজস্ব state থাকতে পারে, যা সেই কম্পোনেন্টের ভ্যালু পরিবর্তিত হলে পুনরায় রেন্ডার হয়। State ব্যবহারের মাধ্যমে আপনি ডাইনামিকভাবে ইউজারের ইন্টারঅ্যাকশন বা অন্যান্য পরিবর্তন অনুসারে UI আপডেট করতে পারেন।
State এর মান পরিবর্তিত হলে React স্বয়ংক্রিয়ভাবে UI রেন্ডার করে, যা ব্যবহারকারীর জন্য সেরা অভিজ্ঞতা প্রদান করে। React-এ state ব্যবহার করা হয় প্রাথমিকভাবে ডাটা ম্যানেজমেন্ট এবং UI আপডেট করার জন্য।
State কেন প্রয়োজন?
১. ডাইনামিক UI রেন্ডারিং
State React কম্পোনেন্টের ডাটা বা অবস্থা ধারণ করে এবং যখন state পরিবর্তিত হয়, তখন React সেই কম্পোনেন্টকে পুনরায় রেন্ডার করে। এর ফলে, ডাইনামিক ইউজার ইন্টারফেস তৈরি করা সম্ভব হয়। উদাহরণস্বরূপ, আপনি একটি বাটন ক্লিক করলে কিছু ডাটা পরিবর্তিত হলে UI রিফ্রেশ করতে পারেন।
উদাহরণ:
import React, { useState } from 'react';
function Counter() {
// State ব্যবহার করে count নামক একটি মান সংরক্ষণ
const [count, setCount] = useState(0);
return (
<div>
<p>Count: {count}</p>
<button onClick={() => setCount(count + 1)}>Increase</button>
</div>
);
}
এখানে, count একটি state ভ্যারিয়েবল এবং setCount হল একটি ফাংশন যা count এর মান পরিবর্তন করে। যখন count পরিবর্তিত হয়, React UI রেন্ডার করবে এবং ইউজারকে নতুন মান দেখাবে।
২. ইউজার ইন্টারঅ্যাকশন ম্যানেজমেন্ট
State ব্যবহার করে ইউজারের ইন্টারঅ্যাকশন পরিচালনা করা যায়। যেমন, একটি ফর্মের ইনপুট, চেকবক্স বা বাটন ক্লিক করলে state আপডেট হয় এবং UI তাতে প্রতিফলিত হয়। React এর state ম্যানেজমেন্ট ইউজার ইন্টারফেসকে অত্যন্ত ইন্টারঅ্যাকটিভ এবং ডাইনামিক করে তোলে।
৩. ডাটা ম্যানেজমেন্ট
React-এ state ব্যবহারের মাধ্যমে আপনি একটি কম্পোনেন্টের ডাটা ম্যানেজ করতে পারেন। একাধিক ইউজার ইন্টারঅ্যাকশন বা প্রোগ্রামেটিক পরিবর্তন state এর মাধ্যমে পরিচালিত হয়। উদাহরণস্বরূপ, একটি টাস্ক লিস্ট অ্যাপের মধ্যে আপনি টাস্ক যুক্ত, মুছে বা সম্পন্ন করতে পারবেন, যার জন্য state ব্যবহার করা হয়।
৪. কম্পোনেন্টের জীবনচক্র পরিচালনা
React কম্পোনেন্টের life cycle এর বিভিন্ন স্টেজে state পরিবর্তন করা যায়। যখন state পরিবর্তিত হয়, তখন React কম্পোনেন্টের পুনরায় রেন্ডারিং ঘটায়, যা কম্পোনেন্টের ভ্যালু আপডেট করার প্রক্রিয়া সহজ করে দেয়। এতে কম্পোনেন্টের জীবনচক্র (life cycle) সম্পূর্ণভাবে নিয়ন্ত্রিত হয়।
৫. এটা ইন্টারনাল ডাটা ম্যানেজমেন্ট
State শুধুমাত্র React কম্পোনেন্টের মধ্যে ব্যবহারযোগ্য। এটি কম্পোনেন্টের অন্তর্গত ডাটা ম্যানেজমেন্টে ব্যবহৃত হয় এবং বাহ্যিকভাবে এটি অ্যাক্সেসযোগ্য নয়। একে সঠিকভাবে ব্যবহারের মাধ্যমে ডাটা নিরাপদে রাখা যায়, যা অ্যাপ্লিকেশনটির পারফরম্যান্স এবং নিরাপত্তা উন্নত করে।
State ব্যবহারের কিছু উদাহরণ
১. কাউন্টারের প্রজেক্ট
import React, { useState } from 'react';
function Counter() {
const [count, setCount] = useState(0);
return (
<div>
<p>Current Count: {count}</p>
<button onClick={() => setCount(count + 1)}>Increase</button>
</div>
);
}
export default Counter;
এখানে, useState হুক ব্যবহার করে state তৈরি করা হয়েছে। setCount ফাংশন দ্বারা count এর মান পরিবর্তিত হয় এবং UI তে প্রদর্শিত হয়।
২. ফর্ম ইনপুটের উদাহরণ
import React, { useState } from 'react';
function Form() {
const [inputValue, setInputValue] = useState('');
const handleChange = (event) => {
setInputValue(event.target.value);
};
return (
<div>
<input
type="text"
value={inputValue}
onChange={handleChange}
/>
<p>Entered text: {inputValue}</p>
</div>
);
}
export default Form;
এখানে, একটি ইনপুট ফিল্ডের মান state-এ সংরক্ষিত হয় এবং ইউজার যখন কিছু টাইপ করবেন, state আপডেট হবে এবং UI তে তা প্রতিফলিত হবে।
সারাংশ
ReactJS-এ state হল এমন একটি মেকানিজম, যা UI এবং ডাটা ম্যানেজমেন্টের জন্য অপরিহার্য। এটি React কম্পোনেন্টের মধ্যে ডাটা পরিবর্তন এবং UI আপডেটের জন্য ব্যবহৃত হয়। State ব্যবহার করে আপনি ডাইনামিক এবং ইন্টারঅ্যাকটিভ ইউজার ইন্টারফেস তৈরি করতে পারেন, যা ইউজারের ইন্টারঅ্যাকশন বা অন্যান্য প্রোগ্রামেটিক পরিবর্তনের উপর ভিত্তি করে পরিবর্তিত হয়।
Read more