Vuex 综合

Posted dzkjz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vuex 综合相关的知识,希望对你有一定的参考价值。

  1. 应用层级的状态应该集中到单个 store 对象中。
  2. 提交 mutation 是更改状态的唯一方法,并且这个过程是同步的。
  3. 异步逻辑都应该封装到 action 里面。

只要你遵守以上规则,如何组织代码随你便。

如果你的 store 文件太大,只需将 action、mutation 和 getter 分割到单独的文件。


对于大型应用,我们会希望把 Vuex 相关代码分割到模块中。下面是项目结构示例:

├── index.html
├── main.js
├── api
│   └── ... # 抽取出API请求
├── components
│   ├── App.vue
│   └── ...
└── store
    ├── index.js          # 我们组装模块并导出 store 的地方
    ├── actions.js        # 根级别的 action
    ├── mutations.js      # 根级别的 mutation
    └── modules
        ├── cart.js       # 购物车模块
        └── products.js   # 产品模块

开启严格模式,仅需在创建 store 的时候传入 strict: true
const store = new Vuex.Store({
  // ...
  strict: true
})
在严格模式下,无论何时发生了状态变更且不是由 mutation 函数引起的,将会抛出错误。
这能保证所有的状态变更都能被调试工具跟踪到
不要在发布环境下启用严格模式!以避免性能损失。
类似于插件,我们可以让构建工具来处理这种情况:
const store = new Vuex.Store({
  // ...
  strict: process.env.NODE_ENV !== ‘production‘
})

表单处理

以上是关于Vuex 综合的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段13——Vue的状态大管家

VSCode自定义代码片段13——Vue的状态大管家

项目集成 vue-router 和 vuex

Vuejs高级之:路由综合实例

Vue3.x 从零开始—— Router + Vuex + TypeScript 实战演练(上)

手把手教你学vue-4(vuex)