2017-01-27 2 views
0

ReactJSでのコード作成を開始したばかりで、JSONデータを取得するためにAPIをヒットする必要がある部分があります。REACTでJSONデータを使用してAPIを試してみよう

私は自分のローカルのノードサーバーでこれを実行しています。変更するたびにビルドしようとしています。これは、エラーがどこにあるのかを示すためです。残念ながら、なぜ私はエラーが発生しているのか分かりません。私はエラーを投げているように見えるビット再貼り付けられます

import React from 'react'; 
import './App.css'; 

var GetUnassignedClients = React.createClass({ 
    unassignedClients: function() { 
     return $.getJSON('http://localhost/backoffice/?action=unassignedClients.getUnassingedClients') 
      .then((data) => { 
       this.setState({resultMe: data.results}); 
      }); 
    }, 
    render: function() { 
     return (
      <div>this.state.resultMe</div> 
     ); 
    } 
}); 

module.exports = GetUnassignedClients; 

これは、これまでの私のコードです

return $.getJSON('http://localhost/backoffice/?action=unassignedClients.getUnassingedClients') 
      .then((data) => { 
       this.setState({resultMe: data.results}); 
      }); 

エラーが$を指しているようですが - 私が{}ですべてをラップすると、完全停止(。)を指します。

何か間違ったことや何か不足していることがわかりません。

+1

エラーが表示されますか? – Giladd

答えて

0

これはJQueryの$.getJSONを使用しようとしていました。ノードサーバーを使用してローカルでビルドしているため、JQueryは本番用コードが作成される前にローカル開発に含まれていませんでした。

代わりに、私は反応をコーディングするときに行くと思われるフェッチを使用しました。

また、このセクションをcomponentDidMount関数に移動して、アプリケーションをロードしてからAPI呼び出しを行うようにしました。ロードするデータがたくさんあるわけではありません。

このセクションのための私の作業コード:

componentDidMount() { 
     fetch("http://localhost/dashboard/?action=unassignedUsers.getUnassingedUsers", { 
      credentials: 'same-origin' 
     }) 
     .then(response => response.json()) 
     .then(json => this.setState({data: json})); 
    } 

私はまた、フェッチ使用して夫婦の問題に出くわした - あなたがアクセス可能なセッションが必要な場合、データは、あなたが特に資格情報またはAPIを通過する必要があると述べましたコールはログインページにリダイレクトされます。最初はステータス200が表示されましたが、データはありません。ログインページに正常にリダイレクトされましたが、明らかにここにアクセスするJSONはありませんでした。

0

イムわからないが、私はあなたがこのよう

fetch(`http://localhost:8088/api/this/is/an/api/call`) 
.then(result=> { 
this.setState({items:result.json()}); 
}); 
2

$.getJSON$のjQueryを参照している中でヒットするだろうと思いました。それはあなたのページに含まれていますか? Javascriptはドル記号を解析しようとしており、それを見つけることができません。他の可能な解決策は、たとえばaxioisまたはfetchのように、別のhttpライブラリ(jQueryが必要ない場合)を使用することです。

関連する問題