[解決済み] ローカルファイルからReact JSにjsonデータを読み込む
2023-02-14 17:39:41
質問
Reactコンポーネントで、ファイルからJSONデータを読み込みたいと思っています。現在、コンソールログは、変数を作成しているにもかかわらず、動作しません。 データ をグローバルな
'use strict';
var React = require('react/addons');
// load in JSON data from file
var data;
var oReq = new XMLHttpRequest();
oReq.onload = reqListener;
oReq.open("get", "data.json", true);
oReq.send();
function reqListener(e) {
data = JSON.parse(this.responseText);
}
console.log(data);
var List = React.createClass({
getInitialState: function() {
return {data: this.props.data};
},
render: function() {
var listItems = this.state.data.map(function(item) {
var eachItem = item.works.work;
var photo = eachItem.map(function(url) {
return (
<td>{url.urls}</td>
)
});
});
return <ul>{listItems}</ul>
}
});
var redBubble = React.createClass({
render: function() {
return (
<div>
<List data={data}/>
</div>
);
}
});
module.exports = redBubble;
理想的には、このようにしたいのですが、うまくいきません。 ".js" を追加しようとします。 をファイル名の末尾に追加しようとします。
var data = require('./data.json');
ベストな方法、できれば"React"の方法について、何かアドバイスがあれば、とてもありがたいです
どのように解決するのですか?
あなたは
非同期接続
を開いているのに、あたかも同期であるかのようにコードを書いています。そのため
reqListener
コールバック関数はあなたのコードと同期して実行されるわけではありません。
React.createClass
の前)、スニペット全体が実行され、リモートロケーションからレスポンスを受信した後にのみ実行されます。
ゼロレイテンシーの量子もつれ接続でない限り、これは では を実行した後になります。例えば、受信したデータをログに残すには、次のようになります。
function reqListener(e) {
data = JSON.parse(this.responseText);
console.log(data);
}
の使い方がわからない。
data
を使用しているのを見たことがないので、理論的にしか提案できませんが、なぜ
アップデート
コールバックでコンポーネントを更新しませんか?
関連
-
[解決済み] cURLでJSONデータをPOSTするにはどうすればよいですか?
-
[解決済み] JSONファイルをprettyprintする方法は?
-
[解決済み] JSONデータをファイルに書き込むにはどうしたらいいですか?
-
[解決済み] JSON文字列を安全にオブジェクトに変換する
-
[解決済み] JSONをC#のダイナミックオブジェクトにデシリアライズする?
-
[解決済み] PHPスクリプトからJSONを返す
-
[解決済み] フェッチする JSONデータをPOSTする
-
[解決済み] Node.JSを使用して、JSONファイルを(サーバー)メモリに読み込むにはどうすればよいですか?
-
[解決済み】なぜPythonはこのJSONデータをパースできないのですか?[終了] PythonがこのJSONデータをパースできないのはなぜですか?
-
[解決済み】ローカルJSONファイルの読み込み
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】同期プログラミングと非同期プログラミングの違いとは(node.jsの場合)
-
[解決済み] チェックボックスが選択されているかどうかを確認するjQuery
-
[解決済み] JSXとLoadshを使用して、ある要素をn回繰り返す方法
-
[解決済み] JavaScriptのtoString()関数をオーバーライドして、デバッグ用に意味のある出力を提供することは可能でしょうか?
-
[解決済み] moment.jsでミュータビリティを回避するには?
-
[解決済み] 文字列とラベルのローカライズとグローバリゼーションのベストプラクティス【終了しました
-
[解決済み] Prototypeを使ってtextareaを自動サイズ調整するには?
-
[解決済み] JavaScriptデータフォーマット/プリティプリンタ
-
[解決済み] react nativeでローカルのJSONファイルからデータを取得するには?
-
[解決済み] Reactで設定ファイルを保存し、読み込む方法