React Native 中的 AsyncStorage 单例

泽雷米克斯

我想制作一个单例来收集我在应用程序周围所需的所有数据。也许这种方法是错误的,那么请纠正我。

现在我的 Singleton 类有简单的代码:

import { AsyncStorage } from 'react-native'

export default class DataManager {
    static myInstance = null

    stringsArray = null

    static instance() {
        if (DataManager.myInstance == null) {
            DataManager.myInstance = new DataManager();
        }

        return this.myInstance;
    }

    async getStringsArray() {
      if (this.stringsArray == null) {
        let strings = await AsyncStorage.getItem('stringsArray')
        this.stringsArray = JSON.parse(strings)
      }
        return this.stringsArray
    }

    async setStringsArray(strings) {
        this.stringsArray = strings;
        await AsyncStorage.setItem('stringsArray', JSON.stringify(strings))
    }
}

这就是我想要调用 getter 和 setter 的方式:

DataManager.instance().setStringsArray(["abc", "def"])

let stringsArray = DataManager.instance().getStringsArray()

不幸的是,如果我设置了一些东西,我以后就无法收到它。在这种情况下,我会很高兴得到一些帮助

梅萨姆纳扎里

我认为您想在您的AsyncStorage手机上存储一些参数,但您不想每次都导入它并使用它来将您的参数保存在手机存储中。react-native 应用程序的常用方法是使用redux-persist库。通过使用这个库,您可以保存您的 redux 存储中的每个参数。你可以在这里阅读更多关于它的信息https://github.com/rt2zz/redux-persist你可以把你想要的每个参数都放进去redux-persist whitelist,它会保存在你的手机存储中。

我希望它能解决你的问题。如果这是您想要的解决方案,请投票给我:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

React Native-如何查看AsyncStorage中存储了什么?

React Native中的AsyncStorage有多大?

React Native:用Java在AsyncStorage中编写

如何使用React Native在AsyncStorage块中设置setState?

AsyncStorage:React Native

在React Native中通过反向导航获取AsyncStorage数据

如何从react-native中的AsyncStorage中删除项目

React Native-返回AsyncStorage中的所有JSON数据?

React native-创建单例模式的最佳方法

如何使用AsyncStorage在React Native中隐藏登录屏幕

在React Native中从AsyncStorage设置TextInput值

如何从React Native的AsyncStorage填充Redux中的initialState?

什么是React Native中的Java单例?

React Native中AsyncStorage的异步帮助器功能

如何从react-native中的AsyncStorage删除特定项目?

React Native-使用AsyncStorage更新数组中的项目

如何在AsyncStorage React Native(Expo)中存储Facebook令牌

使用AsyncStorage在React Native中执行CRUD操作

检查AsyncStorage中的值后,导出react native stackNavigator

如何将React中的localStorage代码转换为React Native中的AsyncStorage?

从React Native中的AsyncStorage获取价值后呈现组件

从AsyncStorage清除项目-React Native

在react-native中实现promise和AsyncStorage

如何在 React Native 中初始化 AsyncStorage 变量?

AsyncStorage - 错误(React Native)

React Native 中的 AsyncStorage 问题

React Native:通过 AsyncStorage 保存图像 URI 并在不同的 React 导航屏幕中重新加载

React-native 中 AsyncStorage 有问题

React Native 中的两个 AsyncStorage 实例?