vuex进阶用法2.0 (getters的用法)

1.简单的写法

这里就不过多的介绍vuex的安装和引入了(具体的可以看我的博客vuex1.0)

import Vue from "vue"
import Vuex from "vuex"
 
Vue.use(Vuex);
 
export default new Vuex.Store({
    state:{
        testObj:{
            name:'小明'
        }
    },
    getters:{
        ceshiName: state=>{
            return state.testObj
        }
    }
})

在页面上就可以拿到这个变量了   这里就可以拿到getters所有的数据了,如果想要拿到testObj里面的数据,直接this.$store.getters.ceshiName即可

mounted:{
           console.log('getters的数据',this.$store.getters)     
        }

上面的是简单的运用     新手可以直接复制上面的代码   慢慢理解

2.运用getters进行过滤

import Vue from "vue"
import Vuex from "vuex"
 
Vue.use(Vuex);
 
export default new Vuex.Store({
    state:{
        goodsList:[
            {
                id:'1',
                name:'小明'
            },
            {
                id:'2',
                name:'小紫'
            },
            {
                id:'3',
                name:'小张'
            }
        ]
    },

    getters:{
        goodsById:state=>(id)=>{
            return state.goodsList.filter(item=>item.id == id)
        }
    }
})

在页面上就可以拿到这个方法进行过滤

mounted:{
           console.log('过滤的数据',this.$store.getters.goodsById(2))    
        }

也可以借助mapGetters进行获取(这样就可以获取到goodsById的方法了)

mport { mapGetters } from 'vuex'

computed:{
	...mapGetters (['goodsById'])
},
mounted:{
     const goods=this.goodsById(2)
     console.log('过滤的数据',goods)
   }

以上就是vuex种的getters简单运用   我这上面的数据是写死的   新手理解后   可以配合state灵活运用 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值