アイフォーンズ!vue.jsデータオブジェクトとしてのjsonオブジェクト配列
私は現在、vue.js
で物事をすることを学んでいます。残念ながら、私は気づいていません。私がしたいのは、単純なJSON形式のオブジェクトで応答するサンプルAPIにリクエストを送信することです。 私は、このオブジェクトを自分のコンポーネント内のデータとして持っていますが、何らかの理由でそれを行うようには見えません。
私はstackoverflowで解決策を見つけようとしましたが、おそらく私は目が見えません。これは他の人が書いたコードとまったく同じです。私は公式のvueウェブサイトでthis exampleを見つけましたが、彼らは私と同じことをやっています..私は推測しますか?
btw。別のファイルにfetchData()
関数を実行すると、私は自分のAPIから取得したデータにアクセスできます。コードの変更はありません。まわりのvueはありません。私は間違いが何であるか分からないので、今は本当に混乱しています。
コード:
var $persons = [];
と私のコンポーネントの内部:
data: {
persons: $persons,
currentPerson: '',
modal: false
},
created: function() {
this.fetchData()
},
methods: {
fetchData: function() {
var ajax = new XMLHttpRequest()
ajax.open('GET', 'http://api.unseen.ninja/data/index.php')
ajax.onload = function() {
$persons = JSON.parse(ajax.responseText)
console.log($persons[0].fname)
}
ajax.send()
}
},
[...]
は、私はそのように前にそれを試してみましたが、それは動作しません。私はまだ出力がありません。 私はajax.onload関数が起動しないと思います。 (いくつかのconsolteログを追加し、この関数内のログは表示されません) –
'ajax.responseText'は有効なJSONですか? – thanksd
@AndreasGrafen上記の提案は機能していないと確信していますか?これを[out](https://jsfiddle.net/ph7w4j4h/)にチェックしてください。それはうまく動作します。それが動作していないことがわかった場合は、[ネットワーク]タブで何らかのエラーが発生しているはずです。 – Pradeepb