vue todomvc案例中全选框出错,需要点三次才能完成全选取消全选两种操作

这个坑我并不想表达任何情绪,保持微笑

HTML如下:

<input class="toggle-all" type="checkbox" v-model="allDone">

错误js如下:

//全选与取消全选事件
        allDone: {
            get: function () {
                this.remaining ===0
            },
            set: function (value) {
                this.todos.forEach(function(todo) {
                    todo.completed = value
                }, this);

            } 
        },
出错情况如下:
我点击全选框,内容全选了,但是全选框没有亮,它默默地做出了自己的贡献不需要任何回报

这里写图片描述

这里写图片描述

经过本仙女的仔细考虑,发现了一个问题,get 没有return 啊,修改如下:
get: function () {
     return this.remaining ===0
},

错因:当第一次点击时,allDone执行了,但是它在等待get return一个值,没有等到,再次点击,才能被选中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值