【问题标题】:localStorage not properly storinglocalStorage 未正确存储
【发布时间】:2019-04-29 21:57:57
【问题描述】:

我正在尝试将基本密钥和数据保存到本地存储。

我正在这样做localStorage.setItem('theKey', 'theData');

由于某种原因,当我在 chrome 中检查我的 localStorage 时,我只看到 'theData' 存储为键并且没有任何值。这是我看到的:

关于为什么会发生这种情况的任何想法?这是一个反应应用程序,本地存储与反应的性能不同吗?

谢谢

【问题讨论】:

  • 我认为您正在尝试将 Data 变量保存到本地存储。所以使用 localStorage.setItem('theKey', theData);
  • 您确定您的代码行正在运行吗?
  • 看起来它正在被存储,我的控制台一定有问题。运行如下所述的 getItem 命令后,我看到了正确的返回
  • @GrantKochmann,我相信键值容器是隐藏的。尝试通过将鼠标悬停在键列的边框底部来拉下容器:P

标签: javascript html reactjs local-storage


【解决方案1】:

看起来 Key Value 容器隐藏在您的控制台中,试试这个。

【讨论】:

    【解决方案2】:

    打开 Web 控制台并运行命令,localStorage.getItem('theKey')

    如果还是看不到,请尝试使用window.localStorage.setItem('theKey', 'theData') 设置密钥

    【讨论】:

    • 这成功了!所以它正在被存储,我猜chrome检查控制台现在肯定有错误或什么
    • @GrantKochmann 这值得怀疑。我认为在您的代码localStorage 中,不以window 为前缀,是not 使用与window.localStorage 相同的对象。它是其他对象,因此它的行为与预期不同。
    • @Amy 更改代码后,我认为您是正确的。使用“window”前缀似乎可以让一切正常工作,但由于某种原因,它仍然没有正确显示在控制台中
    • @GrantKochmann 刷新页面是否会突然出现?
    • @Amy 问题是我标记为答案的问题。我只需要拉下标签就可以看到一切正常。愚蠢的错误!感谢您的所有帮助
    【解决方案3】:

    将 theData 变量而不是 'theData' 保存为字符串值。

    localStorage.setItem('theKey', theData);
    

    【讨论】:

    • OP 正在尝试将字符串值存储到本地存储中,并且(显然)没有设置。是什么让你认为他实际上试图存储一个变量?问题中没有任何内容给人这种印象,您的回答也没有解释为什么没有设置字符串值。
    • 他说他只是看到 'theData' 被存储为键而没有任何价值。我认为他想存储数据
    • 字符串'theData'数据。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-02
    • 2016-04-30
    • 2021-08-30
    相关资源
    最近更新 更多