Я пытаюсь передать некоторые значения на другой экран, это сработало в первый раз, когда я попробовал его с одним значением, используя async
хранилище, установленное для одного элемента, однако теперь я пытаюсь использовать его с несколькими, и это продолжает сбой каждый раз, когда я нажимаю элемент, из которого хочу получить данные.
Сохранение данных, когда я нажимаю элемент из метода FlatList
fetchOnPressOpacity = async item => {
this.state.totalCalories += item.food.nutrients.ENERC_KCAL;
this.state.totalFat += item.food.nutrients.FAT;
this.state.totalCarbs += item.food.nutrients.CHOCDF;
this.state.totalProtein += item.food.nutrients.PROCNT;
const firstPair = ["totalCalories", JSON.stringify(this.state.totalCalories)];
const secondPair = ["totalCarbs", JSON.stringify(this.state.totalCarbs)];
const thirdPair = ["totalProtein", JSON.stringify(this.state.totalProtein)];
const fourthPair = ["totalFat", JSON.stringify(this.state.totalFat)];
try {
this.setState({});
await AsyncStorage.multiSet(firstPair, secondPair, thirdPair, fourthPair);
} catch (error) {
console.log(error);
}
};
getData()
, я не слишком уверен, как хранить данные:
getData = async () => {
try {
const values = await AsyncStorage.multiGet([
"totalCalories",
"totalCarbs",
"totalProtein",
"totalFat"
]);
} catch (e) {
// read error
}
console.log(values);
};
Итак, сейчас моя основная проблема заключается в том, что приложение вылетает, когда я нажимаю элемент. Я получаю указанную ниже ошибку, но не думаю, что это проблема.
VirtualizedList: отсутствуют ключи для элементов, не забудьте указать свойство key или id для каждого элемента или предоставить настраиваемый keyExtractor.
Я также могу записать в консоль значение до сбоя приложения.
Не могли бы вы посоветовать мне?