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 简练的几个函数
Aug 29 Javascript
将查询条件的input、select清空
Jan 14 Javascript
学习JavaScript设计模式(策略模式)
Nov 26 Javascript
JS未跨域操作iframe里的DOM
Jun 01 Javascript
Javascript闭包与函数柯里化浅析
Jun 22 Javascript
javascript数据类型详解
Feb 07 Javascript
vue.js如何将echarts封装为组件一键使用详解
Oct 10 Javascript
微信小程序js文件改变参数并在视图上及时更新【推荐】
Jun 11 Javascript
微信小程序收藏功能的实现代码
Jun 12 Javascript
Vue中&quot;This dependency was not found&quot;问题的解决方法
Jun 19 Javascript
JS实现继承的几种常用方式示例
Jun 22 Javascript
vue+moment实现倒计时效果
Aug 26 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
收音机的保养
2021/03/01 无线电
删除及到期域名的查看(抢域名必备哦)
2008/05/14 PHP
PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
2013/03/06 PHP
smarty中英文多编码字符截取乱码问题解决方法
2014/10/28 PHP
用 Composer构建自己的 PHP 框架之设计 MVC
2014/10/30 PHP
php实现比较两个文件夹异同的方法
2015/06/18 PHP
利用Ext Js生成动态树实例代码
2008/09/08 Javascript
javascript高亮效果的二种实现方法
2008/09/14 Javascript
window.onload 加载完毕的问题及解决方案(上)
2009/07/09 Javascript
Js从头学起(基本数据类型和引用类型的参数传递详细分析)
2012/02/16 Javascript
javascript数据结构之双链表插入排序实例详解
2015/11/25 Javascript
JavaScript 经典实例日常收集整理(常用经典)
2016/03/30 Javascript
require简单实现单页应用程序(SPA)
2016/07/12 Javascript
JavaScript箭头(arrow)函数详解
2017/06/04 Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
2017/12/29 Javascript
解决webpack无法通过IP地址访问localhost的问题
2018/02/22 Javascript
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
微信小程序登录按钮遮罩浮层效果的实现方法
2018/12/16 Javascript
vue前端框架—Mint UI详解(更适用于移动端)
2019/04/30 Javascript
Node.js HTTP服务器中的文件、图片上传的方法
2019/09/23 Javascript
Nuxt 项目性能优化调研分析
2020/11/07 Javascript
详解Python 函数如何重载?
2019/04/23 Python
python移位运算的实现
2019/07/15 Python
mac 上配置Pycharm连接远程服务器并实现使用远程服务器Python解释器的方法
2020/03/19 Python
Django调用百度AI接口实现人脸注册登录代码实例
2020/04/23 Python
pycharm 对代码做静态检查操作
2020/06/09 Python
python time()的实例用法
2020/11/03 Python
施工人员岗位职责
2013/12/12 职场文书
物理专业本科生自荐信
2014/01/30 职场文书
个人租房协议书
2014/04/09 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
工程部部长岗位职责
2015/02/12 职场文书
运动会入场词
2015/07/18 职场文书
2016年党校科级干部培训班学习心得体会
2016/01/06 职场文书
助学金申请书该怎么写?
2019/07/16 职场文书
MySQL的表级锁,行级锁,排它锁和共享锁
2022/07/15 MySQL