<强> 1。什么是国家吗? 强>
上一篇文章说了,<代码> Vuex> 代码就是提供一个仓库,仓库里面放了很多对象。其中<代码> 代码>就状态是数据源存放地,对应于与一般Vue 代码>对<代码>象里面的<代码> 代码>数据(后面讲到的动作<代码> 代码>和<代码> 代码>突变对应于<代码> 代码>方法)。
响应书存储:<代码> 代码>状态里面存放的数据是响应式的,<代码> Vue> 代码组件从<代码> 代码>中存储读取数据,若是<代码> 代码>中存储的数据发生改变,依赖这个数据的组件也会发生更新。(这里”状态”=笆荨?,也就是是说数据和视图是同步的。
<强> 2。局部状态强>
获取:在<代码> Vue> 代码组件中获取数据,最直接的可以通过计算属性中获取;
组件仍然可以保存局部状态:虽然说<代码> Vuex 代码>的<代码> 代码>仓存储库让我们同一管理数据变得更加方便,但是代码一多也会变得冗长,有些组件的数据是自己严格自用,我们可以将<代码> 代码>放状态在组件自身,作为局部数据,专供此组件使用,其他的组件不能用。
<强> 3。mapState 强>
<代码> mapState> 代码的作用是把全局的国家<代码> 代码>和<代码> getter 代码>映射到当前组件的<代码> 代码>计算计算属性中,<代码>。美元商店。代码>。
使用示例
从“vuex”进口{mapState} 出口默认{ 电脑: mapState ({ 数:状态=比;state.count, “计数”//映射。数为store.state.count }) } >之前看看源码
导出功能mapState(州){ const res={}//定义一个对象 normalizeMap(州)。forEach(({键,val})=比;{//normalizeMap()函数初始化状态数据 res(例子)=function mappedState () { 返回typeof val===昂?/判断瓦尔是否是函数 & # 63;val.call(这个美元商店。状态,这store.getters美元)。//若薇尔是函数,将存储的状态和getter作为参数,返回值作为映射状态的返回值 :这个。$ store.state (val)}}) 返回res//返回的是一个函数 }//初始化方法 函数normalizeMap(地图){ 返回Array.isArray(地图)//判断状态是否是数组 & # 63;地图。地图(关键=比;({val关键:关键}))//是数组的话,调用地图方法,将每一个数组元素转换成{val关键:关键} :种(地图)。地图(关键=比;({val关键:地图(例子)}))//否则就是对象,遍历对象,将每一个val变成val:关键 } >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Vuex之理解州的用法实例