Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.08.2024, 22:12
Интересующийся
Отправить личное сообщение для acvafor Посмотреть профиль Найти все сообщения от acvafor
 
Регистрация: 03.08.2024
Сообщений: 13

Как получить значение?
Есть вот такой код
const GetList = async () => {
        const itemsList = [await AsyncStorage.getItem('items')]

        const value = [itemsList.map((item) =>{
            console.log(item)
            return item
        })]
        console.log(value)
        return value
    };

Который в консоль отдаёт


Как я могу получить содержимое text и key из listOfItems?
Обычно я использовал что-то вроде item.listOfItems, но тут почему-то не работает
Изображения:
Тип файла: jpg eac.jpg (14.9 Кб, 2 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 03.08.2024, 22:18
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,577

У тебя в хранилищ строка(просто текст), её надо распарсить в объект если ты хочешь с ней работать. Зачем ты всё вокруг в массивы клал([]) - непонятно.
const GetList = async () => {
  const { listOfItems } = JSON.parse(await AsyncStorage.getItem('items'));

  console.log(listOfItems);
  listOfItems.forEach(({text, key}) => console.log(text, key));

  return listOfItems;
};
__________________
29375, 35
Ответить с цитированием
  #3 (permalink)  
Старый 03.08.2024, 23:39
Интересующийся
Отправить личное сообщение для acvafor Посмотреть профиль Найти все сообщения от acvafor
 
Регистрация: 03.08.2024
Сообщений: 13

Сообщение от Aetae Посмотреть сообщение
У тебя в хранилищ строка(просто текст), её надо распарсить в объект если ты хочешь с ней работать. Зачем ты всё вокруг в массивы клал([]) - непонятно.
const GetList = async () => {
  const { listOfItems } = JSON.parse(await AsyncStorage.getItem('items'));

  console.log(listOfItems);
  listOfItems.forEach(({text, key}) => console.log(text, key));

  return listOfItems;
};
Спасибо большое. Только учусь)
Правильно ли я понимаю что GetList() будет содержать объект
Promise, в котором есть тот самый array. Можно как-то сделать что бы console.log(GetList()) сразу выдавал массив?
Ответить с цитированием
  #4 (permalink)  
Старый 04.08.2024, 19:48
Аспирант
Отправить личное сообщение для roland Посмотреть профиль Найти все сообщения от roland
 
Регистрация: 02.11.2023
Сообщений: 30

Сообщение от acvafor Посмотреть сообщение
Можно как-то сделать что бы console.log(GetList()) сразу выдавал массив?
Нельзя, так как GetList - асинхронная функция. Но можно сделать так:
console.log(await GetList())

// или так
GetList().then((listOfItems) => {
  console.log(listOfItems)
})

// или вот так (в учебных целях)
GetList().then(console.log)
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в Formik получить значение дочернего компонента? prototip Библиотеки/Тулкиты/Фреймворки 0 04.01.2022 20:01
как получить значение элемента? lego9 Элементы интерфейса 14 17.02.2020 13:41
как получить значение span id='cena_###' (### - id товара) kravru Элементы интерфейса 1 28.01.2018 10:54
Как получить значение php переменной sanyalex AJAX и COMET 1 30.10.2011 22:45
Как получить значение следующего элемента? _mouse_ Общие вопросы Javascript 4 25.02.2010 11:37