首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用异步存储将对象存储在react-native中的数组中

使用异步存储将对象存储在react-native中的数组中
EN

Stack Overflow用户
提问于 2020-11-13 10:22:27
回答 1查看 95关注 0票数 0

我已经使用Guid生成了随机二维码,我将上次生成的二维码保存到异步存储中,但是如何将每个生成的随机Guid存储到异步存储中。下面是生成随机id的代码。

代码语言:javascript
复制
  let base64Logo = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAA..";

  function uuidv4() {
    return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
      var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
      return v.toString(16);
    });
  }
  
AsyncStorage.setItem("id", uuidv4());
console.log(uuidv4());

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2020-11-13 11:32:48

在保存时使用JSON.stringify将数组转换为字符串,在读取时使用JSON.parse将数组转换回数组

代码语言:javascript
复制
let base64Logo = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOEAA..";


    function uuidv4() {
      return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
        return v.toString(16);
      });
    }

    // save item in array
    try {
      const myArrayString = await AsyncStorage.getItem('ids'); 
      const myArray = myArrayString !== null?JSON.parse(myArray):[];
      myArray.push(uuidv4())
      await AsyncStorage.setItem('ids', JSON.stringify(myArray));
    } catch (error) {
      // Error saving data
    }

    // when you want to retrieve array 
    try {
      const myArray = await AsyncStorage.getItem('ids');
      if (myArray !== null) {
        // We have data!!
        console.log(JSON.parse(myArray));
      }
    } catch (error) {
      // Error retrieving data
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64814575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档