将数据从 json 存储到 localStorage 浏览器

Posted

技术标签:

【中文标题】将数据从 json 存储到 localStorage 浏览器【英文标题】:Store data from json to localStorage browser 【发布时间】:2022-01-05 14:06:01 【问题描述】:

我正在尝试制作一个从 API 获取的程序,每 3 秒你会获得一个新值,到目前为止一切顺利,我使用 useEffect/useState 获取值。

const [data, setData] = useState();
    useEffect(() =>
        const interval = setInterval(() => 
          getData()
        ,3000);
        return () => clearInterval(interval);
      ,[])
      //fetch the data function
      const getJoke = (() => 
        fetch('API URL')
        .then((res) => res.json())
        .then((res) => 
          setData(res.value);
        )
        .catch((err) => console.log(err));
      )

所以一切正常,我每 3 秒显示一次数据

<button id="button" onClick = handleGetT>isActive ? 'Get Data' : 'Stop'</button>
        <h3>isActive ? null : data</h3>

但我真的很难将喜欢的内容保存为最爱。我还有一个按钮,当您单击它时,您会将其保存在本地存储浏览器数据中。

&lt;button id="button" onClick = localStorage.setItem("name",data)&gt;Save!&lt;/button&gt;

我知道上面的方法可能不合适,由于某种原因,我每 3 秒在 localstorage 上保存不同的数据,我想保存单击时出现的笑话,比如说一个数组,所以我以后可以用它来打印它。

【问题讨论】:

【参考方案1】:

每次呈现按钮时,onClick 中的函数都会自行运行。您需要将其包装在这样的匿名函数中:

<button id="button" onClick=()=>localStorage.setItem("name",data)>Save!</button>

更多信息:https://***.com/a/33846760/9224578

【讨论】:

以上是关于将数据从 json 存储到 localStorage 浏览器的主要内容,如果未能解决你的问题,请参考以下文章

如何将 JSON 数据存储和检索到本地存储中?

将图像从 localStorage 上传到 PHP

使用QML LocalStorage来存储我们的数据

如何使用 LocalStorage 将 json 对象保存到 Assets 文件夹

将 Json 存储在 localStorage 中

如何将数组从localStorage映射到reactJS中的表?