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 函数的执行环境和作用域链的深入解析
Nov 01 Javascript
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
Oct 22 Javascript
SOSO地图API使用(一)在地图上画圆实现思路与代码
Jan 15 Javascript
jQuery和AngularJS的区别浅析
Jan 29 Javascript
第一次接触JS require.js模块化工具
Apr 17 Javascript
浅谈JQ中mouseover和mouseenter的区别
Sep 13 Javascript
详解js界面跳转与值传递
Nov 22 Javascript
vue中阻止click事件冒泡,防止触发另一个事件的方法
Feb 08 Javascript
3种vue路由传参的基本模式
Feb 22 Javascript
vue2.0在没有dev-server.js下的本地数据配置方法
Feb 23 Javascript
vue-cli脚手架引入弹出层layer插件的几种方法
Jun 24 Javascript
JS实现横向轮播图(初级版)
Jun 24 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
php5中date()得出的时间为什么不是当前时间的解决方法
2008/06/30 PHP
用php随机生成福彩双色球号码的2种方法
2013/02/04 PHP
PHP对MongoDB[NoSQL]数据库的操作
2013/03/01 PHP
php自动获取关键字的方法
2015/01/06 PHP
谈谈从phpinfo中能获取哪些值得注意的信息
2017/03/28 PHP
ThinkPHP 框架实现的读取excel导入数据库操作示例
2020/04/14 PHP
js 兼容多浏览器的回车和鼠标焦点事件代码(IE6/7/8,firefox,chrome)
2010/04/14 Javascript
JavaScript动态修改网页元素内容的方法
2015/03/21 Javascript
js实现select跳转菜单新窗口效果代码分享(超简单)
2015/08/21 Javascript
js实现textarea限制输入字数
2017/02/13 Javascript
vue中Axios的封装与API接口的管理详解
2018/08/09 Javascript
ES6 Generator函数的应用实例分析
2019/06/26 Javascript
关于JS解构的5种有趣用法
2019/09/05 Javascript
vuex(vue状态管理)的特殊应用案例分享
2020/03/03 Javascript
vue2和vue3的v-if与v-for优先级对比学习
2020/10/10 Javascript
python分割和拼接字符串
2013/11/01 Python
python实现系统状态监测和故障转移实例方法
2013/11/18 Python
Python中的进程分支fork和exec详解
2015/04/11 Python
Python实现的飞速中文网小说下载脚本
2015/04/23 Python
python编程使用selenium模拟登陆淘宝实例代码
2018/01/25 Python
Python机器学习算法之k均值聚类(k-means)
2018/02/23 Python
深入解析python中的实例方法、类方法和静态方法
2019/03/11 Python
python制作英语翻译小工具代码实例
2019/09/09 Python
python对象销毁实例(垃圾回收)
2020/01/16 Python
tensorflow之tf.record实现存浮点数数组
2020/02/17 Python
html5 canvas绘制矩形和圆形的实例代码
2016/06/16 HTML / CSS
Internet主要有哪些网络群组成
2015/12/24 面试题
《油菜花开了》教学反思
2014/02/22 职场文书
人民教师求职自荐信
2014/03/12 职场文书
大学生社会实践方案
2014/05/11 职场文书
庆国庆活动总结
2014/08/28 职场文书
讲文明知礼仪演讲稿
2014/09/13 职场文书
我的大学四年规划书范文2014
2014/09/26 职场文书
AI:如何训练机器学习的模型
2021/04/16 Python
代码解析React中setState同步和异步问题
2021/06/03 Javascript
利用 SQL Server 过滤索引提高查询语句的性能分析
2021/07/15 SQL Server