web前端vue之vuex单独一文件使用方式实例详解


Posted in Javascript onJanuary 11, 2018

Vuex 是什么?

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。

上次我用了一个加减的例子为大家讲解vuex的基本的使用方式,和在什么样的情况下使用。上次还是在一个组件内把这个例子简单的展示了下,这次我把vuex抽离出来一个单独的文件,统一管理整个项目的状态。

上次也说了如果你的项目够大,那用vuex来管理整个项目的状态,那是再好不过的,如果是小项目的话就不推荐大家使用。好了废话不多说上码:

当你把项目的都准备好后,都安装好了vue-cli,webpack,vuex,router等

第一步新建一个叫:store.js的文件内容如下:

import Vue from 'vue' //引入vue
import Vuex from 'vuex' // 引入vuex
Vue.use(Vuex)  // 注册vuex
export default new Vuex.Store({ // 暴露与new vuex
 state: { // 相当于vue里data 存放整个项目的各个状态
  number: 0 
 },
 mutations: { //相当于vue里的methods放方法的,定义一些可以用来调用和修改state里的状态值
   addFun (state,num) { 
    state.number = num
   }
 }
})

这个状态管理的文件都建好了,接下来就是怎么去调用了

<template>
 {{numbertxt}}
 <button @click="addfun(1)">按钮1</button>
 <button @click="addfun(2)">按钮2</button>
</template> 
<script>
import store from 'store.js' // 老样先要引入
 export default{
  store:store, // 定义
  computed: { //实时监听
    numbertxt () { // 实时监听在store.js里的值改变
     return store.state.number
    }
   },
  methods:{
   addfun(num){
    store.commit('addFun',num) 
    //显式的提交 (commit) mutation里的方法来改变值
   }
  }
}
</script>

好了整个稍微复杂点vuex独立抽离的例子就到这里了,有不懂的朋友或喜欢vue的可以加我微信(nihaomeili87)我们一起进步!

总结

以上所述是小编给大家介绍的web前端vue之vuex单独一文件使用方式实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS自动缩小超出大小的图片
Oct 12 Javascript
js遍历td tr等html元素
Dec 13 Javascript
Extjs根据条件设置表格某行背景色示例
Jul 23 Javascript
js查找节点的方法小结
Jan 13 Javascript
详解参数传递四种形式
Jul 21 Javascript
原生javascript实现匀速运动动画效果
Feb 26 Javascript
JavaScript 数据类型详解
Mar 13 Javascript
基于JavaScript实现的折半查找算法示例
Apr 14 Javascript
Angularjs中的验证input输入框只能输入数字和小数点的写法(推荐)
Aug 16 Javascript
JavaScript EventEmitter 背后的秘密 完整版
Mar 29 Javascript
Javascript实现秒表倒计时功能
Nov 17 Javascript
解决mui框架中switch开关通过js控制开或者关状态时小圆点不动的问题
Sep 03 Javascript
vue-cli webpack 引入jquery的方法
Jan 10 #jQuery
JS计算两个时间相差分钟数的方法示例
Jan 10 #Javascript
Vuex 入门教程
Jan 10 #Javascript
js实现上传并压缩图片效果
Jan 10 #Javascript
web前端vue之CSS过渡效果示例
Jan 10 #Javascript
Vue.js分页组件实现:diVuePagination的使用详解
Jan 10 #Javascript
利用ECharts.js画K线图的方法示例
Jan 10 #Javascript
You might like
sony ICF-2010 拆解与改装
2021/03/02 无线电
php 图片上添加透明度渐变的效果
2009/06/29 PHP
php将字符串全部转换成大写或者小写的方法
2015/03/17 PHP
php将文件夹打包成zip文件的简单实现方法
2016/10/04 PHP
html a标签-超链接中confirm方法使用介绍
2013/01/04 Javascript
图片上传判断及预览脚本的效果实例
2013/08/07 Javascript
jQuery判断浏览器并动态调整select宽度的方法
2016/03/02 Javascript
jQuery简单创建节点的方法
2016/09/09 Javascript
关于json字符串与实体之间的严格验证代码
2016/11/10 Javascript
JS中对数组元素进行增删改移的方法总结
2016/12/15 Javascript
JS中页面与页面之间超链接跳转中文乱码问题的解决办法
2016/12/15 Javascript
vue iview实现动态路由和权限验证功能
2018/04/17 Javascript
解决JS表单验证只有第一个IF起作用的问题
2018/12/04 Javascript
mpvue微信小程序多列选择器用法之省份城市选择的实现
2019/03/07 Javascript
Vue 使用formData方式向后台发送数据的实现
2019/04/14 Javascript
vue集成kindeditor富文本的实现示例代码
2019/06/07 Javascript
Python GAE、Django导出Excel的方法
2008/11/24 Python
详解Python中find()方法的使用
2015/05/18 Python
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
2017/08/05 Python
Python实现去除图片中指定颜色的像素功能示例
2019/04/13 Python
Python+Selenium使用Page Object实现页面自动化测试
2019/07/14 Python
Python如何把Spark数据写入ElasticSearch
2020/04/18 Python
PyQt5实现简单的计算器
2020/05/30 Python
iphoneX 适配客户端H5页面的方法教程
2017/12/08 HTML / CSS
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
Engel & Bengel官网:婴儿推车、儿童房家具和婴儿设备
2019/12/28 全球购物
三好学生自我鉴定
2013/12/17 职场文书
开办化妆品公司创业计划书
2013/12/26 职场文书
学生自我评价范文
2014/02/02 职场文书
高中军训感言200字
2014/02/23 职场文书
触电现场处置方案
2014/05/14 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
铁路安全反思材料
2014/12/24 职场文书
有关三国演义的读书笔记
2015/06/25 职场文书
详解OpenCV获取高动态范围(HDR)成像
2022/04/29 Python