getters:{
returnAgeStu(state){
return age => state.students.filter(s => s.age > age)
},
ageStuLength(state, getters){
return getters.returnAgeStu.length
}
},
在app.vue里{{$store.getters.returnAgeStu(18).length}}则会显示3
{{$store.getters.ageStuLength}}返回的始终为1?与函数作用域有关?
returnAgeStu(state){
return state.students.filter(s => s.age > 18)
},
ageStuLength(state, getters){
return getters.returnAgeStu.length
}
在app.vue里{{$store.getters.returnAgeStu(18)}}会显示3个子元素
{{$store.getters.ageStuLength}}返回的为3.
由此可见,当函数传入形参时,ageStuLength(state, getters)已经在函数声明时定义完成,此时,ageStuLength默认指向 returnAgeStu(state){return age => state.students.filter(s => s.age > age) },
这个函数体,故长度为1