下面我就为大家分享一篇vue 全选与反选的实现方法(无Bug 新手看过来),具有很好的参考价值,希望对大家有所帮助。
我就废话不多说,直接上代码吧!
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <p id="app"> <p style="padding-left: 20px"> <ul style="margin-bottom: 20px"> <li v-for="(item, index) in proData"> <input type="checkbox" :value="index" v-model="selectArr">{{item.name}} </li> </ul> <label> <input type="checkbox" @click="selectAll" :checked="checked"/>全选 </label> </p> </p> </body> <script src="https://cdn.jsdelivr.net/npm/vue"></script> <script type="text/javascript"> var vm = new Vue({ el : "#app", data : { proData: [ { "name": "张三" }, { "name": "李四" }, { "name": "王五" }, { "name": "赵六" } ], selectArr: [], checked : false }, watch : { selectArr(curVal){ if(curVal.length == this.proData.length){ this.checked = true }else{ this.checked = false } } }, methods: { selectAll(event){ if (!event.currentTarget.checked) { this.selectArr = []; } else { //实现全选 this.selectArr = []; this.proData.forEach((item, i) =>{ this.selectArr.push(i); }); } } } }) </script> </html>
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
以上是vue中全选与反选的详细内容。更多信息请关注PHP中文网其他相关文章!