回首憶惘然
2022-06-09 19:19:27
一直在嘗試導(dǎo)入 Json 文件,然后在 React Native 應(yīng)用程序中探索和顯示它。我只是在學(xué)習(xí) React Native,同時也在學(xué)習(xí) Javascript。import React, { Component } from 'react';import { Text, View, AsyncStorage} from 'react-native';import{eventos} from './Events';export default class Admin extends React.Component{ constructor(props){ super(props); this.state={ eventos } try{ AsyncStorage.getItem(eventos).then((value)=>{ if(value!=null){ console.log("Events esta completo") }else{ console.log("Events esta vacio") } this.setState({ eventos:JSON.parse(value) }) }) }catch(err){ console.log(err) } }parseEventsData(){ console.log("Deberia salir algo") return this.state.events.map((eventos,i)=>{ return( <View key={i}> <Text> {eventos.title} </Text> <Text> {eventos.responsible} </Text> <Text> {eventos.description} </Text> </View> ) })}render(){ return( <View> {this.parseEventsData()} <Text>No salio nada</Text> </View> );}}接下來是 Json。
2 回答

繁星coding
TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超4個贊
檢查您的代碼,您會注意到狀態(tài)變量被稱為“eventos”,并且您正在通過“this.state.events”進(jìn)行映射。只是一個錯字。

小怪獸愛吃肉
TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超1個贊
你有幾個問題:
您的
parseEventsData
. 在其他任何地方你都叫它eventos
,但在這里你叫它events
。不確定您打算使用哪個,但不匹配意味著您的調(diào)用setState
設(shè)置的屬性與您稍后在parseEventsData
.假設(shè)您修復(fù)了上面的錯字,
this.state.eventos
一開始將是未定義的,并且在您在構(gòu)造函數(shù)中的承諾解決之前不會被定義。當(dāng)您調(diào)用時this.state.eventos.map
,您正在調(diào)用 map 未定義的值,如您的錯誤所示。您需要在調(diào)用之前檢查它是否未定義map
,或者您應(yīng)該將其初始化為一個空數(shù)組。
添加回答
舉報
0/150
提交
取消