zoukankan      html  css  js  c++  java
  • vuex笔记

      1. action可以是异步的,mutation必须是同步的,不然devtools观察不到mutation触发后的异步情况
      2. store.commit -> 分发 mutation,store.dispatch -> 触发action
        饶了一圈先触发action是为了action可以执行任何异步操作
        mutation 必须同步执行,Action 就不受约束!我们可以在 action 内部执行异步
        操作
        *问:我们的异步回调可以不再action中请求,而是当页面里的回调成功直接commit不是一样的吗,这个时候action也是简单的触发mutation,没有执行任何异步
        而且,感觉异步调接口等方法还是写在各自页面比较好,写在action里太杂乱,易冲突。
        例子:一级平台(action里请求接口传回调函数),IOE(页面回调里触发改值,action也是同步)
        *答:在action中可以引入所有mutation-type,如果在每个页面自己commit,那每个页面就要引入
        mutation-type,不方便。
        经过dashboard实践,最终发现,在页面里组织参数与回调方法,调用各自的action,action在dispatch封装ajax的action,在各自的action回调中可以触发commit保存至store
      3. store.dispatch 可以处理被触发的action的回调函数返回的Promise,并且store.dispatch仍旧返回Promise
      4. Modules
        modules是每个模块对象,包含state,mutations,actions,getters。
        对于模块内部的 getter,根节点状态会作为第三个参数
      5. Action 函数接受一个与 store 实例具有相同方法和属性的 context 对象,context不是store本身,因为它可能存在于局部模块化内。
  • 相关阅读:
    币值转换
    抓老鼠啊~亏了还是赚了?
    第十二周作业
    第十一周作业
    第十周作业
    第九周作业
    第八周作业
    第七周作业
    第五周实验报告和总结
    第四次实验报告及总结
  • 原文地址:https://www.cnblogs.com/wayshon/p/7232553.html
Copyright © 2011-2022 走看看