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 相关文章推荐
jquery的ajax从纯真网(cz88.net)获取IP地址对应地区名
Dec 02 Javascript
js控制页面控件隐藏显示的两种方法介绍
Oct 09 Javascript
jQuery中extend()和fn.extend()方法详解
Jun 03 Javascript
js焦点文字滚动效果代码分享
Aug 25 Javascript
JS将滑动门改为选项卡(需鼠标点击)的实现方法
Sep 27 Javascript
jQuery解析json格式数据简单实例
Jan 22 Javascript
ReactNative实现Toast的示例
Dec 31 Javascript
vue中如何动态绑定图片,vue中通过data返回图片路径的方法
Feb 07 Javascript
vue 每次渲染完页面后div的滚动条保持在最底部的方法
Mar 17 Javascript
vue动态设置img的src路径实例
Sep 18 Javascript
JS使用Dijkstra算法求解最短路径
Jan 17 Javascript
实例分析javascript中的异步
Jun 02 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
php下使用strpos需要注意 === 运算符
2010/07/17 PHP
6种php上传图片重命名的方法实例
2013/11/04 PHP
php图片的二进制转换实现方法
2014/12/15 PHP
php抽象类用法实例分析
2015/07/07 PHP
修复ShopNC使用QQ 互联时提示100010 错误
2015/11/08 PHP
PHP使用反射机制实现查找类和方法的所在位置
2016/04/22 PHP
关于PHP文件的自动运行方法分析
2016/05/13 PHP
jquery 插件开发备注
2010/08/27 Javascript
一个JS的日期格式化算法示例
2013/07/31 Javascript
js 剪切板应用clipboardData详细解析
2013/12/17 Javascript
js实现日历可获得指定日期周数及星期几示例分享(js获取星期几)
2014/03/14 Javascript
Javascript中的关键字和保留字整理
2014/10/16 Javascript
使用javascript实现Iframe自适应高度
2014/12/24 Javascript
jQuery中attr()方法用法实例
2015/01/05 Javascript
jQuery实现鼠标悬停显示提示信息窗口的方法
2015/04/30 Javascript
window.setInterval()方法的定义和用法及offsetLeft与style.left的区别
2015/11/11 Javascript
HTML5+jQuery实现搜索智能匹配功能
2017/03/24 jQuery
js案例之鼠标跟随jquery版(实例讲解)
2017/07/21 jQuery
vue.js中toast用法及使用toast弹框的实例代码
2018/08/27 Javascript
Promise扫盲贴
2019/06/24 Javascript
浅谈js中的attributes和Attribute的用法与区别
2020/07/16 Javascript
js实现简单扫雷
2020/11/27 Javascript
js正则表达式简单校验方法
2021/01/03 Javascript
Python实现查找系统盘中需要找的字符
2015/07/14 Python
Scrapy使用的基本流程与实例讲解
2018/10/21 Python
我用Python抓取了7000 多本电子书案例详解
2019/03/25 Python
如何快速理解python的垃圾回收机制
2020/09/01 Python
了解一下python内建模块collections
2020/09/07 Python
学生如何注册Pycharm专业版以及pycharm的安装
2020/09/24 Python
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
美国战术品牌:5.11 Tactical
2019/05/01 全球购物
Linux中如何用命令创建目录
2015/01/12 面试题
浙江文明网签名寄语
2014/01/18 职场文书
学校运动会霸气口号
2014/06/07 职场文书
乡镇安全生产目标责任书
2014/07/23 职场文书
小学校园广播稿
2015/08/18 职场文书