React Native: TypeError: undefined не является функцией (оценка 'this.props.recipes.map')
Я пытаюсь создать приложение для рецептов React Native, в котором вы можете сохранять свои рецепты локально, но при добавлении AsyncStorage я получаю следующую ошибку: Снимок экрана
Вот мой код:
App.js: https://gist.github.com/anonymous/4e83b8c5ec797278c8a642dfca60c622
Recipes.js: https://gist.github.com/anonymous/c894357b3413f37dbf856c98ef6b93f4
1 ответ
Решение
AsyncStorage.getItem является асинхронным, поэтому ваш this.state.recipes имеет значение null. Вы должны изменить свой componentWillMount() на
async componentWillMount(){
let recipes = await AsyncStorage.getItem('recipes);
if (recipes) {
this.setState({ recipes });
}
});
И вы должны убедиться, что ваш this.state.recipes является массивом. Надеюсь, поможет!