【vue】关于vuex的一点补充

1.vuex的基本和下载

1.vuex是一种集中管理模式,举个详细一点的例子就是公共的数据,函数和计算属性,允许任何组件来使用,修改这里面的数据,vuex也可以成为store处理模式,其中一个store示例有state,mutation,getter,action,module五个基本属性,具体的属性图可以去看官网捏

vuex的下载指令为

npm install vuex@next --save

很快就能下载完成的东西

具体的使用,我们一般是创建一个js文件,在里面创建实例对象,然后抛出

然后挂载到具体的实例上

 这样,这个实例就可以使用vuex里面的属性了

2。关于里面的五个基本属性的详解:

(1)state

state,状态,就是一个公共的储存数据的地点,可以类比一下云端,或者是同一个Runnable对象生成的多个线程,这里面数据是公用的

像调用state的数据,我们要使用$store.state这种调用方式 

任意组件中调用,用这种语法

具体形式是这样

很简单,而且这玩意是响应式的,但是我们不能在组件里面随意进行修改,因为会把公共数据污染掉,我们统一使用mutation进行commit方法 

 

(2)mutation

里面写同步函数,一般用作更新state里面的数据

书写方法如下,写在mutations属性里面,每个mutation都是一个函数类型的东西

其中第一个参数,默认就是上面的state对象,我们可以很快速地拿到数据

第二个参数是负荷,递交的时候传进来的参数

在使用这些方法的时候,不是直接调用mutations,而是用commit选取对应的mutation然后调用

 

 再次注意一下,mutation里面只能写同步方法,一些异步方法比如向后端抓取数据,最好还是用别的方法比如actions

(3)getter

getters其实就是store模式里面的计算属性。每个getter有三个参数

具体的调用方法如下,如果只有state一个默认参数,我们就不需要有括号和传参

 

 没啥好说的,这东西具体用法和计算属性一模一样

(4)action

action具体用法和mutation差不多,但是有几点不一样

(1)action主要以用来写异步方法,比如请求后端数据

(2)action不能修改state,必须通过commit提交给某个mutation才能处理

(3)调用用的是dispatch关键字

(4)默认参数context,在内部用来代替store,这个东西和store对象一模一样,但是本质上不是一个东西

具体的书写方法,异步就体现在这里,哪怕有个指令断掉了,也不影响方法内其他指令的运行和继续,哪怕写在这个下面 

具体的调用方法是这样的

 

(5)module

这个玩意或许可以理解为一种组合式api?其实就是差不多的东西写到一起

其中不太一样的东西其实就是哪个state

1.写法上搞特殊,记住这个简化形式

2.在调用的时候,其他三个属性,都是和父属性储存在一起的,调用的时候不用区别对待

 但是state是在根组件的state里面又增加了一个对象

 在state的基础上借用在父module中的名字使用

就先这么多,随时补充

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值