问答详情
源自:3-4 实现todo应用的业务逻辑

切换active的时候是怎么显示应该要显示的todo的

我知道在toggle的时候有筛选如果this.filter(就是传过来的state)是all的话就显示全部,然后对其他的todo进行了筛选,如果是completed就是true反之false,但是是从哪里体现出来active显示还没有completed而completed就是显示已经completed的呢   困扰了我一晚上 有没有大佬能解开我的迷惑

提问者:慕少4870972 2018-11-25 10:26

个回答

  • Li_JX
    2018-11-26 11:20:09

    补充一下 this.filter的值由todo.vue 里面的toggleFilter方法所改变


    toggleFilter(state) {

    this.filter = state

    },


  • Li_JX
    2018-11-26 11:17:50

    todo.vue的这段代码 如果state是active 那么下面声明的complete 就是false ,filter过滤的todos就是里面todo.completed的属性为false的所有todo

    const completed = this.filter === 'completed'

    return this.todos.filter(todo => completed === todo.completed)