【问题标题】:How can I use sessionStorage in web browser on expo如何在世博会的网络浏览器中使用 sessionStorage
【发布时间】:2020-08-30 19:08:21
【问题描述】:

我想在 expo-web 开发中使用 sessionStorage

如何使用 expo 访问基于浏览器的存储?

【问题讨论】:

    标签: expo-web


    【解决方案1】:

    您可以像在常规 JavaScript 项目中一样轻松访问它。

    sessionStorage.setItem('foo', 'bar');
    

    请注意,但是,如果您希望此代码同时在 Web 和 Native 上运行,则需要在使用之前确保 sessionStorage 存在。

    const getStoredItem = (key) => window && window.sessionStorage && sessionStorage.getItem(key)
    

    这是必需的,因为您的 Expo 应用程序不会在编译为本机应用程序后具有 sessionStorage API。

    【讨论】:

    • 你的意思是如果存在全局窗口对象,尝试使用sessionStorage?对吗?
    • 对不起,我不清楚。我的意思是,您的应用程序运行的环境非常不同,无论是在设备上作为本机应用程序还是在浏览器中。不能保证window 对象甚至window.sessionStorage 对象的存在。因此,您总是希望在尝试使用它之前检查它们的存在(如我上面的示例)。否则,您可能会导致应用崩溃。
    • 实际上,如果您想了解我的意思,只需尝试在您的应用程序中使用sessionStorage 做一些事情,然后在浏览器和应用程序中运行它。我相信你会更好地理解我的意思。
    • 您可能还想研究使用像 localForage 这样的库。然后,您可以根据应用运行的位置对其进行不同的配置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-01-16
    • 2012-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多