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

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

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

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

Nuxt.js

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

Contentful

Contentfulは、グラフィカルなUIを提供しないAPIベースのヘッドレスCMSです。従来のCMSと異なり、ディスクトップやモバイルを始めとするさまざまなプラットフォームへのコンテンツ配信が可能なAPIが用意されています。

Q&A

解決済

1回答

1760閲覧

Vue.js contentful 配列をfor文で指定の回数ループさせて表示させる

seisei

総合スコア19

Vue.js

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

Nuxt.js

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

Contentful

Contentfulは、グラフィカルなUIを提供しないAPIベースのヘッドレスCMSです。従来のCMSと異なり、ディスクトップやモバイルを始めとするさまざまなプラットフォームへのコンテンツ配信が可能なAPIが用意されています。

0グッド

0クリップ

投稿2020/08/08 03:38

編集2020/08/08 03:39

現在Nuxt.jsでcontentfulからAPIで取得した投稿を件数を指定して表示させたいと思っています。
データの取得はできていて、全件表示は①の記述でできます。
今回詰まっているところは、取得した情報を4件だけ表示させたいのですが、そこがうまくいっていないです。
試したコードは②です。
原因は恐らく配列は0から読み込むのに対し、v-forのiが1、2、3、4となっているからだと思うのですが、
iに0を含めるやりかたが調べても出てこないのですが、そもそも0を含めることができないのでしょうか?
ご教授いただけるとありがたいです。

<div v-for="work in works" :key="work.id"> {{work}} </div>

<div v-for="i in 4" :key="i"> {{works[i]}} </div>

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2020/08/08 16:19

普通にvueの基礎を読んだ方がいいです。参考ソースを貼っときます。 index.htmlで保存して開いてください。 <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> <div id="app"> <div>ObjectのArrayのループ</div> <div v-for="work in works" :key="work.id"> works: {{work.value}} </div> <div>数字のArrayのループ</div> <div v-for="value in a"> a: {{value}} </div> <div>数字のArrayのループ。番号付き</div> <div v-for="value, i in a"> a[{{i}}]: {{value}} </div> </div> <script> var app = new Vue({ el: '#app', data: { works: [ { id: 0, value: 1 }, { id: 1, value: 2 }, { id: 2, value: 3 }, { id: 3, value: 4 }, ], a: [1,2,3,4], }, }) </script>
guest

回答1

0

ベストアンサー

やり方はいくつか存在しますが、とりあえず以下のような感じで動きます。

Vue

1<div v-for="work in works.slice(0, 4)" :key="work.id"> 2{{work}} 3</div>

投稿2020/08/11 07:14

aaharu

総合スコア441

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問