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 相关文章推荐
用JavaScript事件串连执行多个处理过程的方法
Mar 09 Javascript
纯js实现的论坛常用的运行代码的效果
Jul 15 Javascript
innerText 使用示例
Jan 23 Javascript
node.js中的fs.read方法使用说明
Dec 17 Javascript
jQuery向后台传入json格式数据的方法
Feb 13 Javascript
自定义百度分享的分享按钮
Mar 18 Javascript
详解JSON1:使用TSQL查询数据和更新JSON数据
Nov 21 Javascript
javascript 网页进度条简单实例
Feb 22 Javascript
基于打包工具Webpack进行项目开发实例
May 29 Javascript
详解微信小程序中组件通讯
Oct 30 Javascript
vue通过数据过滤实现表格合并
Nov 30 Javascript
多页vue应用的单页面打包方法(内含打包模式的应用)
Jun 11 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
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
php创建多级目录代码
2008/06/05 PHP
深入php self与$this的详解
2013/06/08 PHP
php截取字符串之截取utf8或gbk编码的中英文字符串示例
2014/03/12 PHP
开源php中文分词系统SCWS安装和使用实例
2014/04/11 PHP
WebQQ最新登陆协议的用法
2014/12/22 PHP
Smarty模板引擎缓存机制详解
2016/05/23 PHP
Yii核心验证器api详解
2016/11/23 PHP
老生常谈php 正则中的i,m,s,x,e分别表示什么
2017/03/02 PHP
Yii 访问 Gii(脚手架)时出现 403 错误
2018/06/06 PHP
PHP中用Trait封装单例模式的实现
2019/12/18 PHP
关于Jqzoom的使用心得 jquery放大镜效果插件
2010/04/12 Javascript
form表单中去掉默认的enter键提交并绑定js方法实现代码
2013/04/01 Javascript
使用jQuery简单实现模拟浏览器搜索功能
2014/12/21 Javascript
Javascript 多物体运动的实现
2014/12/24 Javascript
AngularJS基础教程之简单介绍
2015/09/27 Javascript
JavaScript中 ES6 generator数据类型详解
2016/08/11 Javascript
详解Vue.js动态绑定class
2016/12/20 Javascript
详解使用grunt完成requirejs的合并压缩和js文件的版本控制
2017/03/02 Javascript
想用好React的你必须要知道的一些事情
2017/07/24 Javascript
基于Vue 2.0的模块化前端 UI 组件库小结
2017/12/21 Javascript
百度地图去掉marker覆盖物或者去掉maker的label文字方法
2018/01/26 Javascript
微信小程序实现简易table表格
2020/06/19 Javascript
详解简单易懂的 ES6 Iterators 指南和示例
2019/09/24 Javascript
Vue按时间段查询数据组件使用详解
2020/08/21 Javascript
一看就懂得Python的math模块
2018/10/21 Python
在Python中输入一个以空格为间隔的数组方法
2018/11/13 Python
使用Python向C语言的链接库传递数组、结构体、指针类型的数据
2019/01/29 Python
python脚本后台执行方式
2019/12/21 Python
python-图片流传输的思路及示例(url转换二维码)
2020/12/21 Python
用Python实现定时备份Mongodb数据并上传到FTP服务器
2021/01/27 Python
HTML5的新特性(1)
2016/03/03 HTML / CSS
营销总监岗位职责范本
2014/02/26 职场文书
高中信息技术教学反思
2016/02/16 职场文书
Win11怎么添加用户?Win11添加用户账户的方法
2022/07/15 数码科技
CSS中理解层叠性及权重如何分配
2022/12/24 HTML / CSS