Vuex--数据共享--再理解

首先,使用Vuex的必要性
  • 如果想要在子组件中使用祖先组件中的数据,那么就必须一层一层的传递(非常麻烦)
  • 兄弟组件之间不能直接传递数据,如果兄弟组件之间想要传递数据,那么就必须借助父组件或者一个中间件(非常麻烦)
其次,什么是Vuex呢
  • Vuex是Vue配套的公共数据管理系统,我们可以将共享的数据保存到Vuex中
  • 方便整个程序中的任何组件都可以获取和修改Vuex中保存的公共数据
使用Vuex的步骤
  1. 导入Vuex(注意:在导入Vuex之前必须先导入Vue)
  2. 创建Vuex对象const store = new Vuex.Store({state:{count:0},});(这里的state就相当于组件中的data,就是专门用于保存共享数据的)
  3. 在祖先组件中添加store的key保存Vuex对象,然后就可以通过{{this.$store.state.msg}}进行访问(只要祖先组件中保存了Vuex对象,那么祖先组件和他所有的后代组件就可以使用Vuex中保存的共享数据了)
修改共享数据(操作共享数据)
  • 在Vuex中不推荐直接修改共享数据
  • 如果多个组件都修改了共享数据,那么后期数据发生了错误,我们如果需要去调试错误,就需要把每一个修改了共享数据的组件都检查一遍,这样效率非常低,非常的不利于我们去排错
  • mutations:用于保存修改共享数据的方法(注意:在执行mutations中定义的方法的时候,系统会自动给这些方法传递一个state参数,state中就保存了共享的数据)
  • methods:中通过this.$store.commit("方法名")的方式调用
getters属性(类似于Vue实例中的计算属性Computed)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值