| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 深入理解 Vuex -> 正文阅读 |
|
[JavaScript知识库]深入理解 Vuex |
Vuex 定义在Vue中实现集中式状态(数据)管理的一个Vue 插件,对vue应用中多个组件的共享状态进行集中式的管理(读、写),也是一种组件间通信的方式,且适用于任意组件间通信。 关键词: 集中式:与分布式相对立,就是把数据放在一起管理 插件:它是一个插件,需要Vue.use(vuex) 共享状态:这里面的数据可以供多个组件使用 注意: 每一个 Vuex 应用的核心就是 store(仓库)。“store” 基本上就是一个容器,它包含着你的应用中大部分的状态 ( state )。 为什么需要vuex ,全局事件总线不是很好吗?如果组件特别特别多,就会显得逻辑混乱,大量组件之间互相通信,所以vue就将数据单独放在一个容器里,它不属于任何一个组件 使用场景:当多个组件依赖于同一状态; 来自不同组件的行为需要变更同一状态 工作原理图核心流程:
各模块的作用: State: 用于存储数据 actions 用于响应组件中的动作 mutations?用于操作数据(state) getters? 没有出现再原理图中,说明它是非必要的,它主要是将state中的数据用于加工,有点类似于computed,但是computed 的缺点是它不能跨组件使用
记住:要更改state中的数据,必须经过Mutations,它是操作state的唯一途径 Actions 和 Mutations 的区别
四个map 方法的使用--用于优化代码:举个栗子~ 假如AB组件都需要使用store.state中的某个数据x,那么在AB中都需要写成:this.$store.state.x 这样是不是很麻烦~ 所以出现了map映射方法,帮助我们将代码映射生成到AB组件,这比自己在AB组件中写简洁很多 mapState? 借助它生成计算属性,从state中读取数据
mapGetters? ??用于帮助我们映射getters中的数据为计算属性
mapActions? ?帮助我们生成与actions对话的方法,即:包含$store.dispatch(xxx) ?说白了就是帮助我们调dispatch
mapMutations??用于帮助我们生成与mutations对话的方法,即:包含 $store.commit(xxx)的函数 ?说白了就是帮助我们调commit
|
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 6:38:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |