Выполнение операции CRUD в React Native с использованием AsyncStorage - PullRequest
0 голосов
/ 31 января 2019
  *// Creating An Array
    const someArray = [1,2,3,4];
    return AsyncStorage.setItem('somekey', JSON.stringify(someArray))
    .then(json => console.log('success!'))
     .catch(error => console.log('error!'));



   //Reading An Array 
   return AsyncStorage.getItem('somekey')
  .then(req => JSON.parse(req))
  .then(json => console.log(json))
  .catch(error => console.log('error!'));
   * 

Как я могу обновить определенный индекс массива и удалить индекс
например, новый массив должен быть {1, A, 3}

1 Ответ

0 голосов
/ 31 января 2019

При использовании AsyncStorage лучше всего рассматривать структуру данных как неизменную.В общем, чтобы выполнить обновление, вы берете то, что хотите, связываетесь с ним и кладете обратно под тем же ключом.

return AsyncStorage.getItem('somekey')
  .then(req => JSON.parse(req))
  .then(json => {
          const temp = json;
          temp[2] = 'A';
          temp.pop(); // here it's [1, A, 2]
          AsyncStorage.setItem('somekey', JSON.stringify(temp));
       })
  .catch(error => console.log('error!'));

А затем, чтобы удалить любой элемент, просто выполните AsyncStorage.removeItem('somekey')AsyncStorage нет прямых операций, позволяющих выполнять более глубокие обновления, только наборы данных ключ / значение.

...