第一步安装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状态管理的更多相关文章

  1. Vue状态管理vuex

    前面的话 由于多个状态分散的跨越在许多组件和交互间各个角落,大型应用复杂度也经常逐渐增长.为了解决这个问题,Vue提供了vuex.本文将详细介绍Vue状态管理vuex 引入 当访问数据对象时,一个 V ...

  2. vuex(vue状态管理)

    vuex(vue状态管理) 1.先安装vuex npm install vuex --save   2.在项目的src目录下创建store目录,并且新建index.js文件,然后创建vuex实例,引入 ...

  3. VueX(vue状态管理)简单小实例

    VueX:状态管理 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 核心模块:State. ...

  4. 理解vuex的状态管理模式架构

    理解vuex的状态管理模式架构 一: 什么是vuex?官方解释如下:vuex是一个专为vue.js应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证以一种可预测的 ...

  5. vue状态管理器(用户登录简单应用)

    技术点:通过vue状态管理器,对已经登录的用户显示不同的页面: 一  vue之状态管理器应用 主要用来存储cookie信息 与vue-cookies一起使用 安装:npm install vue-co ...

  6. Vue状态管理之Vuex

    Vuex是专为Vue.js设计的状态管理模式.采用集中存储组件状态它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 1.首先让我们从一个vue的计数应用开始 ...

  7. vue - 状态管理器 Vuex

    状态管理 vuex是一个专门为vue.js设计的集中式状态管理架构.状态?我把它理解为在data中的属性需要共享给其他vue组件使用的部分,就叫做状态.简单的说就是data中需要共用的属性.

  8. 五、vue状态管理模式vuex

    一.vuex介绍 Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化. 即data中属性同时有一 ...

  9. Vue学习日记(四)——Vue状态管理vuex

    前言 先说句前话,如果不是接触大型项目,不需要有多个子页面,不使用vuex也是完全可以的. 说实在话,我在阅读vuex文档的时候,也很难以去理解vuex,甚至觉得没有使用它我也可以.但是直到我在项目碰 ...

随机推荐

  1. 破解jar包5步搞定,jira7.9.2操作成功,附github代码库

    1,从要破解的程序中拷贝.jar包文件,运行1_jar.sh将其解压.以jira7.9.2为例: $install_dir\JIRA\atlassian-jira\WEB-INF\lib\atlass ...

  2. Linux 连接 Xshell 及网络配置

    一.准备工具 在WMware上已经装有Linux系统:WMware安装CentOS7文章. xshell连接工具: 二.修改相关配置 切换到root用户下: 配置主机名(可选): #方法一:替换原主机 ...

  3. Docker 创建镜像、修改、上传镜像

    Docker 创建镜像.修改.上传镜像 –创建镜像有很多方法,用户可以从 Docker Hub 获取已有镜像并更新,也可以利用本地文件系统创建一个. 一.创建镜像 创建镜像有很多方法,用户可以从 Do ...

  4. Java集合篇二:LinkList

    package com.test.collection; /** * 自定义实现LinkList * * 1.双向链表 * 实现原理:底层封装Node节点对象(每个节点存放有3部分内容:1.上个节点的 ...

  5. CSS3新增的伪类选择器

    伪类选择器的作用:对已有选择器做进一步的限制,对已有选择器能匹配的元素做进一步的过滤.CSS 3提供的伪类选择器主要分为以下三类: 结构性伪类选择器 UI元素状态伪类选择器 其他伪类选择器 1.结构性 ...

  6. js CheckBox 全选、反选

    <h3>你最喜欢的水果是?</h3> <label><input type="checkbox"/>苹果</label> ...

  7. jQuery动态添加删除CSS样式

    jQuery框架提供了两个CSS样式操作方法,一个是追加样式addClass,一个是移除样式removeClass,下面通过一个小例子讲解用法. jQuery动态追加移除CSS样式 <!DOCT ...

  8. alpinelinux

    https://wiki.alpinelinux.org/wiki/Tutorials_and_Howtos https://nixos.org/nix/manual/#ch-installing-b ...

  9. Selenium2学习(十八)-- js处理内嵌div滚动条

    前言 前面有篇专门用js解决了浏览器滚动条的问题,生活总是多姿多彩,有的滚动条就在页面上,这时候又得仰仗js大哥来解决啦. 一.内嵌滚动条 1.下面这张图就是内嵌div带有滚动条的样子,记住它的长相. ...

  10. Java 实现斐波那契数列

    public class Fibonacci { private static int getFibo(int i) { if (i == 1 || i == 2) return 1; else re ...