確かにそれはありません! これは、ファーストネームが空の配列であるためです。
ソリューション:
1-クラスにこれを追加し、名前を削除、画像、ファイルの先頭から要約:
constructor(props){
super(props)
this.state = {
names : [],
images : [],
summaries : []
}
}
2-呼び出し、コンストラクタ内のデータを取得し、それを削除renderメソッドから(あなたは、レンダリング内部レンダリングあなたが無限ループを持つことになります呼び出すすべてのことを行うべきではありません!):
constructor(props){
super(props)
this.state = {
names : [],
images : [],
summaries : []
}
let that = this
fetch(topFifty).then(function(response) {
return response.json().then(function(json) {
let names = [], images = [], summaries = []
json.feed.entry.forEach(function(datum) {
names.push(datum["im:name"].label)
images.push(datum["im:image"][0].label)
summaries.push(datum.summary.label)
})
that.setState({names:names,
images: images,
summaries: summaries})
})
})
}
'TypeError例外を返しうーん、:未定義のプロパティを読み取ることができません「SETSTATE」を'そこにはab私は状態を管理することができましたか? –
ok固定、this.setStateをthis.setStateで置き換え、let that = this ....を追加することに注意してください – challenger