質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

Q&A

解決済

1回答

1179閲覧

nuxt.js で取得したjsonデータを表示する方法

kakeiteiya

総合スコア252

Vue.js

Vue.jsは、Webアプリケーションのインターフェースを構築するためのオープンソースJavaScriptフレームワークです。

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

0グッド

0クリップ

投稿2019/04/25 12:18

以下のようなjsonデータがあります。

{ "status": 200, "data": [ { "id": 11111, "name": "tanaka" },{ "id": 22222, "name": "satou" },{ "id": 33333, "name": "yamada" } ] }

以下のように nuxt.jsで取得までできたのですが、表示がうまくいきません。
おそらくループ文で書く必要があるとおもうのですが、nuxt.jsでループ文を調べても情報が見つかりませんでした。
dataの中にある3人のIDと名前を表示させるにはどのようにすればいいのでしょうか。。

nuxt.js

1<template> 2 <section class="container"> 3 <h1>json取得画面</h1> 4 #200が取得できる# 5 <h1>{{jsondata.status}}</h1> 6 # idの取得ができない ループ文が必要?# 7 <h1>{{jsondata.data.id}}</h1> 8 # nameの取得ができない ループ文が必要?# 9 <h1>{{jsondata.data.name}}</h1> 10 </section> 11 12</template> 13 14<script> 15import axios from 'axios' 16export default { 17 async asyncData ({ store, params }) { 18 const logininfo = { login_id : store.state.auth.uid } 19 // ログイン情報からjsonデータを取得 20 let { data } = await 21 axios.post(`http://localhost:3000/test`,logininfo) 22 return { jsondata: data } 23 } 24} 25 26</script>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

vue

1<li v-for="item in jsondata.data"> 2 <span>{{ item.id }}</span> 3 <span>{{ item.name }}</span> 4</li>

こんな感じでv-forで取得出来ないでしょうか?

投稿2019/04/25 12:49

編集2019/04/25 13:11
LanHma

総合スコア192

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kakeiteiya

2019/04/26 00:44

ありがとうございます ` error Elements in iteration expect to have 'v-bind:key' directives ` というエラーがでました、、
kakeiteiya

2019/04/26 01:04

<div v-for="item in jsondata.data" v-bind:key="item.id"> <span>{{ item.id }}</span> <span>{{ item.name }}</span> </div> これで解決できました
LanHma

2019/04/26 02:31

すいません!keyが必要でした!解決出来てよかったです!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問