every与some实现全选与提交的基础判断

every与some的区别:

  1.every一假都假

  2.some一真都假

实现的具体效果:

  1.every实现所有复选框都选中全选按钮选中

  2.every实现所有复选框有一个不选中全选按钮取消选中

  3.使用some实现有其中一个选中则可以提交,否则不能提交

    <div class="app">
        <div v-for="(item,index) in checks">
            <input type="checkbox" :checked="item.check" v-model="item.check" @change="info">
            {{item.value}}
        </div>
        <input type="checkbox" :checked="checkAll"> 全选 <br>
        <button :disabled="checkDis">确定</button>
    </div>
    <script>
        new Vue({
            el: '.app',
            data () {
                return {
                    checks:[
                        {
                            check: false,
                            value: '苹果'
                        },
                        {
                            check: false,
                            value: '草莓'
                        },
                        {
                            check: false,
                            value: '香蕉'
                        }
                    ],
                    checkAll: false,
                    checkDis: false
                }
            },
            mounted () {
                this.info()
            },
            methods: {
                info () {
                    var flg = this.checks.every((item,index) => {
                        return item.check
                    })
                    this.checkAll = flg

                    var btnFlg = this.checks.some((item,index) =>{
                        return item.check
                    })
                    this.checkDis = !btnFlg
                }
            }
        })
    </script>
原文地址:https://www.cnblogs.com/qiuchuanji/p/10011866.html