摘要: 我们知道在store下有index.js,记录着state,getters,mutations...随着内容越来越多,index.js会显得越来越臃肿,于是我们需要进行内容的抽取,抽取的结构如下: 视频地址:https://www.bilibili.com/video/BV15741177Eh?p= 阅读全文
posted @ 2021-04-10 22:48 爱编程DE文兄 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 由于store对象通常只有一个,当数据很多都需要放到store对象,会显得store特别臃肿,因此引入了modules属性帮助我们将store对象进行模块划分 当我们在modules中的定义module的时候,最终是会被加入到根的state里面的,即模块会被作为根state的一个变量,在取modul 阅读全文
posted @ 2021-04-10 17:51 爱编程DE文兄 阅读(297) 评论(0) 推荐(0) 编辑
摘要: 之前也讲过了,actions中是用来操作异步代码的,由于在mutations写异步操作会导致devtools工具记录不到state的变化,因此才有actions的存在,下面是基本的使用,如下: 点击按钮,发布到actions: <template> <div> <button @click="toA 阅读全文
posted @ 2021-04-10 16:37 爱编程DE文兄 阅读(751) 评论(0) 推荐(0) 编辑
摘要: 之前mutation的提交和定义都会涉及到事件类型这个东西,往往在commit的时候要指定事件类型,在mutations中定义的时候也要事件类型,是非常有可能在手写的时候会出现两个事件类型不一致的情况,因此官方建议把事件类型抽取到一个文件中,用的时候用统一的一个就行。 比如在src下创建一个muta 阅读全文
posted @ 2021-04-10 15:23 爱编程DE文兄 阅读(292) 评论(0) 推荐(0) 编辑
摘要: vuex的store对象的state是响应式,凡是预先在state中定义的状态,都会被加入到响应式系统中,当状态发生了变化,所有引用状态的vue文件的template都会随之发生变化,做到响应式的功能。刚才也说了,提前定义好的会被加入到响应式系统中,那后面追加的属性或对象能不能加入到响应式系统中呢? 阅读全文
posted @ 2021-04-10 14:59 爱编程DE文兄 阅读(863) 评论(0) 推荐(0) 编辑
摘要: 上一篇说了提到mutation时如何传参,写法如下: const five = 5 this.$store.commit('increfive',five) 但这种写法是普通的写法,还有一种比较特殊的写法,如下: const ten = 10 this.$store.commit({ type: ' 阅读全文
posted @ 2021-04-10 14:21 爱编程DE文兄 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 在之前也演示过了mutation的基本使用,里面是定义一系列的函数,但函数的组成部分是有讲究的,如下: 因此,在commit提交的时候,参数1是事件类型。那如何给mutation的方法传入参数呢?也挺简单的,如下: 传入字符串或常量时: <template> <div> <button @click 阅读全文
posted @ 2021-04-10 12:16 爱编程DE文兄 阅读(808) 评论(0) 推荐(0) 编辑
摘要: store对象中getters就类似于计算属性,若想获取state的变量,直接获取即可,但很多时候获取的state变量需要经过一系列的加工或计算才是我们想要的,因此才有了getters,下面演示个最基本的getters使用: <template> <div> <h2>{{$store.getters 阅读全文
posted @ 2021-04-10 11:44 爱编程DE文兄 阅读(1441) 评论(0) 推荐(0) 编辑
摘要: 之前说过,对state的修改必须经过mutations,而mutations中是用来定义方法的,在vue文件中通过提交某个方法来完成state的修改,比如说现在点击一个按钮,让counter+1,规范的做法如下: vue文件: <template> <div> <h1>我是首页页面</h1> <h2 阅读全文
posted @ 2021-04-10 10:40 爱编程DE文兄 阅读(1034) 评论(0) 推荐(0) 编辑