【问题标题】:saving and removing weekly schedule in async storage react native在异步存储中保存和删除每周计划反应原生
【发布时间】:2019-11-05 01:36:18
【问题描述】:

我的项目中有一个场景,我必须保存每周开始和结束时间的时间表

我想要什么

用户可以输入带有开始和结束的日程表 时间,可以删除。

我还确认如果用户已经有一个日程安排,他不能在同一天在删除第一个日程安排之前保存另一个日程安排。

我试过的

AsyncStorage multiset 和 multiget

但我还没有达到我的目标。

请让我知道如何使用对象或关联数组从 AsyncStorage 保存和取回计划。

我们将不胜感激

【问题讨论】:

    标签: javascript arrays react-native object asyncstorage


    【解决方案1】:

    将数据保存为对象,并使用 JSON.stringify 将其异步存储为字符串

    state = {
     schedule: [{ day: 'Monday', start: '9:00', end: '17:00'}]
    }
    

    将项目保存为字符串

    【讨论】:

      【解决方案2】:

      您只能将字符串存储在 AsyncStorage 中。您将需要对您的数组/对象进行字符串化,并在检索时重新解析。

      异步存储存储键值对。

      AsyncStorage.setItem(key, JSON.stringify(item));
      AsyncStorage.getItem(key);
      
      async setSchedule(schedule){
         try{
           let value = await AsyncStorage.getItem("schedule");
           if(value==null)
           {
              await AsyncStorage.setItem("schedule",JSON.stringify(schedule));
              console.log("schedule Not there);
           }
           else{
              console.log("schedule aldready set");
           }
         }
         catch(er){
         }
      }
      
      async removeSchedule()
      {
         await AsyncStorage.removeItem("schedule")
      }
      
      async getSchedule()
      {
         let value = await AsyncStorage.getItem("schedule")
         return JSON.parse(value)
      }
      

      【讨论】:

        【解决方案3】:

        将数据保存为对象,并使用JSON.stringify将其作为字符串保存在异步存储中

        state = {
         schedule: [{ day: 'Monday', start: '9:00', end: '17:00'}]
        }
        

        将项目保存为字符串

        AsyncStorage.setItem('schedule', JSON.stringify(this.state.schedule));
        

        检索项目。

        const items = await AsyncStorage.getItem('schedule');
        const schedule = JSON.parse(items);
        

        DEMO

        【讨论】:

          猜你喜欢
          • 2020-12-03
          • 2021-12-08
          • 2021-12-07
          • 2020-07-09
          • 1970-01-01
          • 2020-11-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多