前提・実現したいこと
VuexとDjangoによる旅行の日程を作成するプログラムを作成しています。
観光地を追加
のボタンをクリックしたら、観光地と移動手段の入力欄が追加されるようにしたいです。
発生している問題・エラーメッセージ
importしてきた子のコンポーネントをクリックされるたびに追加できるようにしたいのですが、その方法がわからない状態です。
該当のソースコード
Vue
1<template> 2 <div class="container-fluid"> 3 <div class="row d-flex justify-content-center mt-5"> 4 <div class="col-md-8 col-xl-6"> 5 <div class="row mb-5"> 6 <trip-detail v-for="item in trips" v-bind:key="item.id" v-bind="item"></trip-detail> 7 <transport v-for="tran in trans" v-bind:key="tran.id" v-bind="tran"></transport> 8 <trip-detail v-for="item in trips" v-bind:key="item.id" v-bind="item"></trip-detail> 9 </div> 10 <button class="btn btn-outline-success" type="button">観光地を追加</button> 11 </div> 12 </div> 13 </div> 14</template> 15 16<script> 17import TripDetail from '../components/TripDetail.vue' 18import Transport from '../components/Trans.vue' 19 20export default { 21 data(){ 22 return { 23 trips: [ 24 {id: 1, name: 'spot', placeholder: '観光地'}, 25 {id: 2, name: 'hours', placeholder: '滞在時間'}, 26 {id: 3, name: 'money', placeholder: '料金'}, 27 ], 28 trans: [ 29 {id: 1, name: 'howTo', placeholder: '移動手段'}, 30 {id: 2, name: 'howLong', placeholder: '所要時間'}, 31 {id: 3, name: 'fee', placeholder: '料金'}, 32 ], 33 } 34 }, 35 components: { 36 'trip-detail': TripDetail, 37 'transport': Transport, 38 }, 39} 40</script>
Vue
1<template> 2 <div class="col-4"> 3 <input type="text" class="form-control" v-bind:name="name" v-bind:placeholder="placeholder"> 4 </div> 5</template> 6 7<script> 8 9export default { 10 props: { 11 'name': String, 12 'placeholder': String, 13 }, 14} 15</script>
Vue
1<template> 2 <div class="col-3 mt-3 mb-3"> 3 <input type="text" class="form-control" v-bind:name="name" v-bind:placeholder="placeholder"> 4 </div> 5</template> 6 7<script> 8export default { 9 props: { 10 'name': String, 11 'placeholder': String, 12 } 13} 14</script>
試したこと
button
にv-onを記述して、methods
などで追加するのが良いのかと思っておりますが、この方法もやり方がわからない状態です。
補足情報(FW/ツールのバージョンなど)
vue.js 2.x
vue/cli 4.5.13
Visual Studio Code v1.53.2
MacOS Darwin x64 20.3.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。