vuex 笔记整理

  • 在vuex出来以前,我们怎么管理我们的状态?
    data --> state
    template --> view
    methods --> actions
    一个表示“单向数据流”理念的极简示意
    vue--(dispath)->actions---(modify state)-->state---(render)->vue ... 如此循环下去
    图片描述
    vuex的出现,在actions 和state之间多了一层 mutations
    vue--(dispath)--> actions--(commit)-->mutations--(modidy)-->state--(render)-->vue ... 如此单向数据流循环下去。
    再细分下 actions-->mutations-->state 就是vuex
    图片描述
  • state
    Vuex 使用单一状态树,即每个应用将仅仅包含一个 store 实例,但单一状态树和模块化并不冲突。可以同时设置多个子模块,统一由一个store来管理
  • mutations
    下面一句话相当重要
    更改 Vuex 的 store 中的状态的唯一方法是提交 mutation
    重要原则
    mutation 必须是同步函数
    如何一定是同步函数呢?
    假设当你能调用了两个包含异步回调的 mutation 来改变状态,你怎么知道什么时候回调和
    哪个先回调呢?
  • action
    当vue组件dispath一个action后,会提交的是 一个mutation,从而间接变更状态state
    并且可以是异步操作
    最简单的调用如:store.dispatch('increment')

参考文献

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值