"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > JavaScript 및 React JS와 함께 로컬 저장소 API 사용

JavaScript 및 React JS와 함께 로컬 저장소 API 사용

2024-11-06에 게시됨
검색:396

Using Local Storage API With JavaScript And React JS

JavaScript এবং React এ Local Storage API ব্যবহার সম্পর্কে বিস্তারিত আলোচনা করতে পারবেন?

JavaScript এবং React এ Local Storage API ব্যবহার খুব গুরুত্বপূর্ণ একটি কনসেপ্ট, যা অ্যাপ্লিকেশনের ডেটা ব্রাউজারের মধ্যে সংরক্ষণ করার জন্য ব্যবহার করা হয়। এতে ডেটা ব্রাউজারে সেভ করা থাকে এবং ব্রাউজার বন্ধ বা রিফ্রেশ করলেও ডেটা হারিয়ে যায় না।

Local Storage এর বৈশিষ্ট্য:

  1. Key-Value Pair Storage: Local storage ডেটা key-value pair আকারে সংরক্ষণ করে।
  2. Persistent Storage: ব্রাউজার বন্ধ হওয়ার পরেও ডেটা থাকে।
  3. String Data: Local storage শুধুমাত্র string ডেটা সংরক্ষণ করতে পারে।
  4. 5MB Data Limit: Local storage এ সাধারণত 5MB পর্যন্ত ডেটা সংরক্ষণ করা যায়।
  5. No Expiry Date: Cookies এর মতো Local storage এর কোনো expiration time থাকে না।

Local Storage Methods:

  1. localStorage.setItem(key, value): ডেটা সংরক্ষণ করতে ব্যবহৃত হয়।
  2. localStorage.getItem(key): ডেটা রিট্রিভ করতে ব্যবহৃত হয়।
  3. localStorage.removeItem(key): কোনো নির্দিষ্ট key এর ডেটা মুছে ফেলতে ব্যবহৃত হয়।
  4. localStorage.clear(): সব ডেটা মুছে ফেলতে ব্যবহৃত হয়।

React এ Local Storage ব্যবহার:

React এ, local storage ডেটা ম্যানেজ করতে সাধারণত React এর useEffect এবং useState হুক ব্যবহার করা হয়। এতে অ্যাপ্লিকেশনটি যখন প্রথম লোড হয় বা আপডেট হয়, তখন ডেটা local storage থেকে আনা হয় এবং প্রয়োজন অনুযায়ী সেভ করা হয়।

উদাহরণ:

React এর মাধ্যমে একটি সাধারণ theme সিস্টেম তৈরি করে দেখানো হলো, যেখানে থিমের তথ্য local storage এ সংরক্ষণ করা হবে।

import React, { useState, useEffect } from "react";

function App() {
  // local storage থেকে theme আনতে useState ব্যবহার করা হচ্ছে
  const [theme, setTheme] = useState(() => {
    return localStorage.getItem("theme") || "light";
  });

  // useEffect ব্যবহার করে local storage এ theme সংরক্ষণ করা হচ্ছে
  useEffect(() => {
    localStorage.setItem("theme", theme);
  }, [theme]);

  // থিম পরিবর্তন করার জন্য একটি function
  const toggleTheme = () => {
    setTheme((prevTheme) => (prevTheme === "light" ? "dark" : "light"));
  };

  return (
    

{theme === "light" ? "Light Mode" : "Dark Mode"}

); } export default App;

কোড বিশ্লেষণ:

  1. useState: এখানে theme state তৈরি করা হয়েছে এবং initial value local storage থেকে নিয়ে নেওয়া হয়েছে। যদি local storage এ কোনো theme না থাকে, তাহলে default light দেওয়া হয়েছে।

  2. useEffect: যখনই theme state আপডেট হয়, তখন useEffect ফাংশন রান করে এবং নতুন theme local storage এ সেভ করে দেয়।

  3. toggleTheme: এই ফাংশনের মাধ্যমে থিম পরিবর্তন করা হয়, যা light থেকে dark বা dark থেকে light এ পরিবর্তিত হয়।

Local Storage এ Object সংরক্ষণ:

Local storage শুধুমাত্র string ডেটা সংরক্ষণ করতে পারে। তাই যদি কোনো object সংরক্ষণ করতে চান, তাহলে সেটিকে JSON.stringify() দিয়ে string এ রূপান্তর করতে হবে এবং JSON.parse() দিয়ে পুনরায় object এ রূপান্তর করতে হবে।

উদাহরণ:

// Object সংরক্ষণ করা
const user = { name: "John", age: 30 };
localStorage.setItem("user", JSON.stringify(user));

// Object রিট্রিভ করা
const storedUser = JSON.parse(localStorage.getItem("user"));
console.log(storedUser); // Output: { name: "John", age: 30 }

React এ Local Storage এর প্রয়োগের কিছু উদাহরণ:

  1. User Authentication: লগইন করা ব্যবহারকারীর তথ্য local storage এ সংরক্ষণ করা যায়, যাতে ব্যবহারকারী পরবর্তীতে অ্যাপ খুললে আবার লগইন করতে না হয়।
  2. Theme Settings: ব্যবহারকারীর পছন্দের থিম সংরক্ষণ করা যায়, যাতে পরবর্তীতে সে অ্যাপ খুললে আগের থিম রিমেম্বার হয়।
  3. Shopping Cart: ই-কমার্স সাইটে ব্যবহারকারীর শপিং কার্টের তথ্য local storage এ সংরক্ষণ করা যায়।

এইভাবে React এ local storage ব্যবহার করে আপনি ডেটা persistent করতে পারেন এবং ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে পারেন।

Local Storage ব্যবহার করার সময় সতর্কতা: Local storage এ sensitive ডেটা সংরক্ষণ করা উচিত নয়, কারণ এটি ক্লায়েন্ট-সাইড এ স্টোর করা হয় এবং সহজেই অ্যাক্সেস করা যায়। Sensitive ডেটা সংরক্ষণের জন্য sessionStorage বা cookies এর মতো অন্যান্য নিরাপদ পদ্ধতি ব্যবহার করা যেতে পারে।

릴리스 선언문 이 기사는 https://dev.to/rsmacademybd/using-local-storage-api-with-javascript-and-react-js-19m9?1에 복제되어 있습니다. 침해가 있는 경우에는 [email protected]으로 문의하시기 바랍니다. 그것을 삭제하려면
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3