मैं वस्तु से नाम और उपनाम प्राप्त करना चाहता हूं लेकिन मैं नहीं कर सकता

function ToDoScreen({ isLogin }: any) {
  const name: any = localStorage.getItem("inputs");
  console.log(name);
  return (
    <div>
      <p>{name.name}</p>
    </div>
  );
}

export default ToDoScreen;

enter image description here

-1
1sahinomer1 3 अप्रैल 2021, 17:25

2 जवाब

सबसे बढ़िया उत्तर

लोकल स्टोरेज केवल स्ट्रिंग्स स्टोर कर सकता है इसलिए name एक स्ट्रिंग है (JSON जैसा भी होता है)।

यदि आप इसे एक वस्तु के रूप में देखना चाहते हैं, तो आपको इसे JSON.parse से गुजरना होगा।


ध्यान दें कि यदि आप :any का उपयोग करने के बजाय name के लिए एक प्रकार निर्दिष्ट करते तो यह त्रुटि पकड़ी जाती। टाइपस्क्रिप्ट में प्रकारों का उपयोग करने की यही बात है!


आप सीधे संग्रहण तक पहुंचने के बजाय useLocalStorage हुक का उपयोग करना चाह सकते हैं।

3
Quentin 3 अप्रैल 2021, 17:30

मुझे लगता है कि आप डेटा प्राप्त कर रहे हैं, आपको इसका उपयोग करने के लिए इसे जेसन के रूप में पार्स करने की आवश्यकता है। इसे नीचे आज़माएं और देखें कि क्या यह आपके लिए बेहतर काम करता है।

function ToDoScreen({ isLogin }: any) {
  const data = localStorage.getItem("inputs");
  var dataJson = JSON.parse(data)
  console.log(dataJson.name);
  console.log(dataJson.lastname);
  return (
    <div>
      <p>{dataJson.name}</p>
    </div>
  );
}
0
Ntjs95 3 अप्रैल 2021, 17:34