vuex vue状态管理
第一步安装vuex(安装在生产环境)
npm install vuex
第二步 src下新建store文件夹 用来专门放状态管理,store文件夹下新建四个js文件 index.js actions.js mutations.js getters.js(后面会一一介绍这几个文件的作用)
第三步 main.js中引入store
import store from './store'
main.js中实例化的时候使用store
new Vue({
el:'#app',
store,//挂载stroe
router,
template:'<App>' ,
components:{App}
})
基础工作做完了,可以开始第一个demo了
vuex共分四个模块,components即组件,数据展示修改层面,actions业务处理事务转发,mutations具体的业务逻辑处理,getters拿到处理好后的数据返给components
四个模块可以都写在index.js里也可以单独写,然后在index.js里引入,这里是单独写再引入的
index.js
import Vue from 'vue'//引入vue
import Vuex from 'vuex'//引入vuex import * as actions from './actions'
import * as mutations from './mutations'
import * as getters from './getters' //*即所有 Vue.use(Vuex) onst state = {
number:123
} //注册上面各个模块
const store = new Vuex.Stroe({
state,getters,actions,mutations
}) expoort default store
state{}数据存放位置,现在里面有个number数据为123
其实现在已经可以在组件里面用这个数据了,通过this.$store.state.number 只是官方不建议这么用
从页面开始
componentsA.vue
<template>
<div>
<p>vuex中的数据{{number}}</p>
<button @click='modifynumber'>修改number</button>
</div>
</template>
<script>
import{mapActions,mapGetters} from 'vuex' // 语法糖
//mapActions 相当于this.$store.dispatch('请求类型',数据) 发送请求
//mapGetters 相当于this.$store.getters.number export default{
data(){
retrun{ }
},
methods:{
...mapActions(
['modifynumber']//提交方法
), },
computed:{
...mapGetters(['number']) //获取state中的数据
}
}
</script>
mapActions写在methods中 mapGetters写在computed中
mutations中做具体的业务逻辑处理
mutations.js
export const modifynumber = (state) =>{
state.number ++
}
getters.js
export const number = (state) =>{ return state.number}
大概就是这些了
I love three things in the world: the sun, the moon, and you. The sun for day, the moon for night, and you forever.
浮世万千,吾爱有三,日 月 与卿,日为朝,月为暮,卿为朝朝暮暮。
vuex vue状态管理的更多相关文章
- Vue状态管理vuex
前面的话 由于多个状态分散的跨越在许多组件和交互间各个角落,大型应用复杂度也经常逐渐增长.为了解决这个问题,Vue提供了vuex.本文将详细介绍Vue状态管理vuex 引入 当访问数据对象时,一个 V ...
- vuex(vue状态管理)
vuex(vue状态管理) 1.先安装vuex npm install vuex --save 2.在项目的src目录下创建store目录,并且新建index.js文件,然后创建vuex实例,引入 ...
- VueX(vue状态管理)简单小实例
VueX:状态管理 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 核心模块:State. ...
- 理解vuex的状态管理模式架构
理解vuex的状态管理模式架构 一: 什么是vuex?官方解释如下:vuex是一个专为vue.js应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证以一种可预测的 ...
- vue状态管理器(用户登录简单应用)
技术点:通过vue状态管理器,对已经登录的用户显示不同的页面: 一 vue之状态管理器应用 主要用来存储cookie信息 与vue-cookies一起使用 安装:npm install vue-co ...
- Vue状态管理之Vuex
Vuex是专为Vue.js设计的状态管理模式.采用集中存储组件状态它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 1.首先让我们从一个vue的计数应用开始 ...
- vue - 状态管理器 Vuex
状态管理 vuex是一个专门为vue.js设计的集中式状态管理架构.状态?我把它理解为在data中的属性需要共享给其他vue组件使用的部分,就叫做状态.简单的说就是data中需要共用的属性.
- 五、vue状态管理模式vuex
一.vuex介绍 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 即data中属性同时有一 ...
- Vue学习日记(四)——Vue状态管理vuex
前言 先说句前话,如果不是接触大型项目,不需要有多个子页面,不使用vuex也是完全可以的. 说实在话,我在阅读vuex文档的时候,也很难以去理解vuex,甚至觉得没有使用它我也可以.但是直到我在项目碰 ...
随机推荐
- js实现选中当前元素并改变颜色(js、jq的各种循环)
1.jq伪类选择器(:not)的使用 2.js jq运用数组循环 3.checkbox的选中循环事件 4.select的选中事件 <select class="ssss" o ...
- Spring课程 Spring入门篇 4-9 Spring bean装配之对jsr支持的说明
1 解析 1.1 疑问:2.2去掉@resource注解,为什么不能赋值?不是有set方法了吗? 1.2 @resource注解版本支持 1.3 没有显式指定@resource的那么,默认名称从何获得 ...
- Bootstrap组件介绍
一.下拉菜单 用于显示链接列表的可切换.有上下文的菜单.下拉菜单的 JavaScript 插件让它具有了交互性. 1.实例 将下拉菜单触发器和下拉菜单都包裹在 .dropdown 里,或者另一个声明了 ...
- mockito 初识
转载:http://blog.csdn.net/zhoudaxia/article/details/33056093 在平时的开发工作中,经常会碰到开发进度不一致,导致你要调用的接口还没好,此时又需要 ...
- CSS 兼容性支持
CSS 兼容性支持 在一个CSS属性还没有成为标准之前,各浏览器厂商已经做了这个属性的实现,可能各浏览器实现不尽相同,所以加入属性前缀区分. safari , chrome:-webkit- oper ...
- 【转载】win7mysql5.7.18免安装配置教程
闲着没事,装个mysql试试,小编以前都是用的linux,感觉mysql安装就是傻瓜式操作啊,第一次在windows系统上装,感觉出了很多问题,现在将整个过程分享给大家,希望大家在安装的时候少走弯路. ...
- stateless函数里面的参数问题
UI组件文件: function Selector({ status1, status2, status3 }){ return (<div><span>demo</sp ...
- 尝试VS插件
从试用vs2013开始,ide变得越来越智能,但是vs2013总是会出一些莫名其妙的问题,导致编译不成功,不能跟vs2010共享等等.于是由再次回到vs2010. 现在vs2015的update1更新 ...
- JavaScript基础入门知识
JavaScript三种使用方式 JavaScript代码屏蔽 JavaScript内容显示的位置 JavaScript中的错误及解决方法 1.语法错误:通过控制台可以检查并解决. 2.逻辑错误:通过 ...
- blog test
try my first blog by cnblog. i will record my learn experence in the future.