vuex的简单使用教程


Posted in Javascript onFebruary 02, 2018

什么是Vuex?

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

使用vuex进行组件间数据的管理

npm i vuex -S

main.js

import Vue from 'vue'
import App from './App.vue'
import store from './store.js'

new Vue({
 store,
 el: '#app',
 render: h => h(App)
})

store.js

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
// 这里定义初始值
let state = {
 count:10
};
const mutations = {
 add(context){
  context.count++
 },
 decrease(context){
  context.count--
 }
};
// 事件触发后的逻辑操作
// 参数为事件函数
const actions = {
 add(add){
  add.commit('add')
 },
 decrease(decrease){
  decrease.commit('decrease')
 },
 oddAdd({commit,state}){
  if (state.count % 2 === 0) {
   commit('add')
  }
 }
};
// 返回改变后的数值
const getters = {
 count(context){
  return context.count
 },
 getOdd(context) {
  return context.count % 2 === 0 ? '偶数' : '奇数'
 }
};
export default new Vuex.Store({
 state,
 mutations,
 actions,
 getters
})

App.vue

<template>
 <div id="app">
 <button @click="add">add</button>
 <button @click="decrease">decrease</button>
 <button @click="oddAdd">oddAdd</button>
 <div>{{count}}</div>
 <div>{{getOdd}}</div>
 </div>
</template>
<script>
import {mapGetters,mapActions} from 'vuex'
 export default {
  // 得到计算后的值
  computed:mapGetters(['count','getOdd']),
  // 发生点击事件触发不同函数
  methods:mapActions(['add','decrease','oddAdd'])
 }
</script>

vuex的简单使用教程

GitHub: https://github.com/wmui

总结

以上所述是小编给大家介绍的vuex的简单使用教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js同比例缩放图片的小例子
Oct 30 Javascript
JavaScript实现模仿桌面窗口的方法
Jul 18 Javascript
javascript简单实现跟随滚动条漂浮的返回顶部按钮效果
Aug 19 Javascript
jquery操作checkbox火狐下第二次无法勾选的解决方法
Oct 10 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
May 12 Javascript
详解Angular-Cli中引用第三方库
May 21 Javascript
解决node修改后需频繁手动重启的问题
May 13 Javascript
深入浅析Node.js 事件循环、定时器和process.nextTick()
Oct 22 Javascript
CryptoJS中AES实现前后端通用加解密技术
Dec 18 Javascript
JS实现的点击按钮图片上下滚动效果示例
Jan 28 Javascript
KnockoutJS数组比较算法实例详解
Nov 25 Javascript
vue2.x 对象劫持的原理实现
Apr 19 Javascript
详解VueJS应用中管理用户权限
Feb 02 #Javascript
原生JS实现网页手机音乐播放器 歌词同步播放的示例
Feb 02 #Javascript
使用express+multer实现node中的图片上传功能
Feb 02 #Javascript
Vue多种方法实现表头和首列固定的示例代码
Feb 02 #Javascript
jquery.picsign图片标注组件实例详解
Feb 02 #jQuery
使用webpack打包koa2 框架app
Feb 02 #Javascript
Vue组件化开发思考
Feb 02 #Javascript
You might like
JS 网站性能优化笔记
2011/05/24 PHP
PHP中if和or运行效率对比
2014/12/12 PHP
php查询mssql出现乱码的解决方法
2014/12/29 PHP
什么是json和jsonp,jQuery json实例详详细说明
2012/12/11 Javascript
非常漂亮的JS+CSS图片幻灯切换特效
2013/11/20 Javascript
JavaScript极简入门教程(三):数组
2014/10/25 Javascript
jQuery实现跨域
2015/02/03 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
javascript学习指南之回调问题
2016/04/23 Javascript
JavaScript代码性能优化总结(推荐)
2016/05/16 Javascript
js完整倒计时代码分享
2016/09/18 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
深入浅析AngularJS中的一次性数据绑定 (bindonce)
2017/05/11 Javascript
vue音乐播放器插件vue-aplayer的配置及其使用实例详解
2017/07/10 Javascript
jQuery中元素选择器(element)简单用法示例
2018/05/14 jQuery
vue组件三大核心概念图文详解
2019/05/30 Javascript
让 babel webpack vue 配置文件支持智能提示的方法
2019/06/22 Javascript
electron踩坑之remote of undefined的解决
2020/10/06 Javascript
Vue3 实现双盒子定位Overlay的示例
2020/12/22 Vue.js
Python中不同进制的语法及转换方法分析
2016/07/27 Python
Flask框架的学习指南之开发环境搭建
2016/11/20 Python
OpenCV 边缘检测
2019/07/10 Python
解决pyCharm中 module 调用失败的问题
2020/02/12 Python
Python requests设置代理的方法步骤
2020/02/23 Python
玛蒂尔达简服装:Matilda Jane Clothing
2019/02/13 全球购物
某公司面试题
2012/03/05 面试题
人力资源管理毕业生自荐信
2013/11/21 职场文书
2014的自我评价
2014/01/13 职场文书
《守株待兔》教学反思
2014/03/01 职场文书
分家协议书
2014/04/21 职场文书
宣传标语大全
2014/07/01 职场文书
反洗钱宣传活动总结
2014/08/26 职场文书
2014年政务公开工作总结
2014/12/09 职场文书
运动会主持词大全
2015/07/02 职场文书
多台电脑共享文件怎么设置?多台电脑共享文件操作教程
2022/04/08 数码科技
Redis批量生成数据的实现
2022/06/05 Redis