前提・実現したいこと
チェックボックスを選択した際に、その値を配列に追加して保持しておきたいのですが、
どのように実装できますでしょうか?
発生している問題・エラーメッセージ
v-model="Id"で値を保持しようと考えていたのですが、最後にチェックした1つしか保持できません。
全体的な内容としましては、jsonで取得したデータを親コンポーネントからループ処理で一件ずつ渡され、リストで表示している形になります。
該当のソースコード
Vue
1<template> 2 <div class="row"> 3 <div class="projectname"> 4 <span class="name-text">{{ project.projectName }}</span> 5 </div> 6<略> 7 <div class="confirm-history"> 8 <span class="name-text">{{ project.confirmDates }}</span> 9 </div> 10 <div class="confirm-checkbox"> 11 <input 12 type="checkbox" 13 v-model="Id" 14 value="project.id" 15 /> 16 </div> 17 </div> 18</template> 19 20<script> 21export default { 22 props: { 23 project: { 24 type: Object, 25 default: () => {}, 26 }, 27 }, 28 data() { 29 return { 30 Id: [], 31 }; 32 }, 33}; 34</script> 35 36<style lang="scss" scoped> 37略 38</style>
チェックされた内容を管理するのは、子コンポーネントで行うのでしょうか?
全体のソースコードがないので、なんとも言えませんが、文面を見る限り、
projectのチェックボックスが選択されたら、親コンポーネントでチェックされたprojectを管理するための配列を持っておいて、そこに追加するべきなのかなと感じましたが。。。
回答1件
あなたの回答
tips
プレビュー