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

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

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

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

Q&A

解決済

1回答

7182閲覧

v-forで取得したindexを使用して配列の番号を指定したい

shoshi

総合スコア18

Vue.js

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

0グッド

1クリップ

投稿2020/03/06 08:07

編集2020/03/06 08:10

apiの情報をv-forで展開しインデックス番号も表示させることはできました。
ここで得たインデックス番号を利用してjsonパラメータに1つの番号を指定し、
再度apiへ投げたいと思ってます。スクリプト内で配列に対し、
インデックスを指定する方法が分からず困っています。よろしくお願いします。
sendの中にapiから取得した番号が複数入ってきます。

vue

1<template> 2 <li v-for = " (list, index) in lists" :key ="list.show"> 3 <div id='indexnum'>{{index}}</div> 4<button type='submit' @click = "send" >送信</button></div></li> 5</template> 6 7<script> 8 data: function () { 9 return { 10 lists: null, 11 show: false, 12 send: [] 13 } 14 15 send () { 16 var = params = { 17 sendnum: send[] ← v-forで生成された各ボタンのインデックスを指定したい 18 } 19 } 20... post,then~ 21</script>

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

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

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

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

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

guest

回答1

0

ベストアンサー

定義したメソッドに引数を設定して、そのままインデックスを渡してしまえばいいのではないでしょうか。

vue

1<template> 2 <div> 3 <li v-for="(list, index) in lists" :key="list.show"> 4 <div id='indexnum'>{{index}}</div> 5 <button type='submit' @click="sendindex(index)">送信</button> 6 </li> 7 {{send}} 8 </div> 9</template> 10 11<script> 12 export default { 13 name: 'sample-page', 14 data() { 15 return { 16 lists: [ 17 { show: 'first' }, 18 { show: 'second' }, 19 { show: 'third' }, 20 ], 21 show: false, 22 send: [], 23 }; 24 }, 25 methods: { 26 sendindex(index) { 27 this.send.push(index); 28 }, 29 }, 30 }; 31</script>

投稿2020/03/06 13:22

yureighost

総合スコア2183

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

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

shoshi

2020/03/09 10:55

ありがとうございます!解決しましたm(_ _)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問