相当于计算属性,修改state中的数值,但不改变state原本的数值。
export default new Vuex.Store({
state:{
studentList:[]
},
getters:{
newStudent(state){
return state.studentList.map((item, index) => {
if(index == 0){
return '**'+item
}else if(index < 3){
return item + '**'
}else{
return item
}
})
}
}
})
html:
<li v-for="(item, index) in newStudent" :key="index">{{item}}</li>
js:
//import {mapState, mapGetters} from 'vuex'
import {mapGetters} from 'vuex'
export default({
computed:{
//newStudent(){
//return this.$store.getters.newStudent
//}
//...mapGetters(['newStudent'])
...mapGetters({
newStudent:'newStudent'
})
}
})
扩展:
getters:{
newStudent(state,getters){
return state.studentList.map((item, index) => {
if(index == 0){
return '**'+item + getters.a
}else if(index < 3){
return item + '**'
}else{
return item
}
})
},
a(){
return '111'
}
}