いつも皆さんに助けていただいてます。ありがとうございます。
expressで作ったapiサーバーにて、取得した自分のツイートのtextを、reactで表示できずに悩んでいます。
前回頂いたアドバイスを元に、より簡単なやり方として、fetchを使ったやり方に挑戦しています。
お手本と公式を参考に、tweet一覧を出力しようとしたところ、エラーは無くなりましたが、stateのtweets: []が空欄のままのため、何も出力されません。
postmanで確認したところ、http://localhost:5000/twitter/mytweetにアクセスした際に、
json
1[ 2 { 3 "text": "試しにzaraのスニーカー履いたらベストサイズだった。ワンちゃんしかない。" 4 }, 5 { 6 "text": "今年も無事入院コースでした" 7 }, 8(中略) 9]
とはgetできています。
なぜ配列が空欄のままなのでしょうか。
また、どのように直せば、指定の配列が出てくるでしょうか。
javascript
1import React from 'react'; 2 3class Tweets extends React.Component { 4 constructor(props){ 5 super(props); 6 this.state = { 7 tweets:[] 8 }; 9 this.loadAjax = this.loadAjax.bind(this); 10 } 11 12 async loadAjax() { 13 try { 14 const res = await fetch("http://localhost:5000/twitter/mytweet"); 15 const json = await res.json(); 16 return this.setState({ 17 tweets: json, 18 }); 19 } 20 catch (err) { 21 console.error(err); 22 } 23 } 24 25 render(){ 26 const tweets = this.state.tweets.map((e)=><li>{e.text}</li>); 27 return( 28 <ul> 29 {tweets} 30 </ul> 31 ) 32 } 33} 34 35 36export default Tweets;
初歩的かとは思いますが、何卒お力添えよろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/03 10:30
2020/04/03 11:09
2020/04/05 07:26
2020/04/06 00:37