vuex的使用和简易实现


Posted in Vue.js onJanuary 07, 2021

这里记录一下vuex的使用和vuex的简易实现

首先创建对应的store目录和对应的入口index.js

import Vue from 'vue'
import Vuex from 'vuex'
import products from './modules/products'
import cart from './modules/cart'

Vue.use(Vuex)

export default new Vuex.Store({
 strict: process.env.NODE_ENV !== 'production',
 state: {
  count: 0,
  msg: 'Hello Vuex'
 },
 getters: {
  reverseMsg (state) {
   return state.msg.split('').reverse().join('')
  }
 },
 mutations: {
  increate (state, payload) {
   state.count += payload
  }
 },
 actions: {
  increateAsync (context, payload) {
   setTimeout(() => {
    context.commit('increate', payload)
   }, 2000)
  }
 },
 modules: {
  products,
  cart
 }
})
  • 首先注册vuex的插件
  • 开发阶段开启strict严格模式
  • 配置初始的state
  • 配置对应的getters
  • 配置对应的mutations 无副作用的函数更新
  • 配置actions在此做异步处理
  • 最后配置模块
  • 模块中配置:
const state = {}
const getters = {}
const mutations = {}
const actions = {}

export default {
 namespaced: true,
 state,
 getters,
 mutations,
 actions
}

配置模块命名空间namespaced:true 导入store时的模块名

使用的时候

vuex的使用和简易实现

可以 通过一些对应的vuex提供的方法把store中的对应属性和方法拿到组件中

vue父子通信

vuex的使用和简易实现

vuex的使用和简易实现

vuex的使用和简易实现

或者就是自定义 组件的 v-model

非父子组件:Event Bus
我们可以使用一个非常简单的 Event Bus 来解决这个问题:

vuex的使用和简易实现

vuex的使用和简易实现

vuex的使用和简易实现

还有一种需要注意的,外部props转换为内部state

name: 'ArticleMeta',
 props: {
  article: {
   type: Object,
   required: true
  },
  user: {
   type: Object
  }
 },
 data () {
  return {
   currentArticle: this.article, isDelete: false
  }
 },

以上就是vuex的使用和简易实现的详细内容,更多关于vuex的使用和实现的资料请关注三水点靠木其它相关文章!

Vue.js 相关文章推荐
vue中音频wavesurfer.js的使用方法
Feb 20 Vue.js
vue绑定class的三种方法
Dec 24 Vue.js
Vue 修改网站图标的方法
Dec 31 Vue.js
如何管理Vue中的缓存页面
Feb 06 Vue.js
vue登录页实现使用cookie记住7天密码功能的方法
Feb 18 Vue.js
vue-router懒加载的3种方式汇总
Feb 28 Vue.js
vue-element-admin项目导入和导出的实现
May 21 Vue.js
vue基于Teleport实现Modal组件
May 31 Vue.js
Vue中Object.assign清空数据报错的解决方案
Mar 03 Vue.js
vue选项卡切换的实现案例
Apr 11 Vue.js
vue数据字典取键值项目的字典问题
Apr 12 Vue.js
Vue操作Storage本地化存储
Apr 29 Vue.js
vue watch监控对象的简单方法示例
Jan 07 #Vue.js
vue.js watch经常失效的场景与解决方案
Jan 07 #Vue.js
通过vue.extend实现消息提示弹框的方法记录
Jan 07 #Vue.js
如何在vue-cli中使用css-loader实现css module
Jan 07 #Vue.js
vue3中轻松实现switch功能组件的全过程
Jan 07 #Vue.js
vue+elementui通用弹窗的实现(新增+编辑)
Jan 07 #Vue.js
详解Vue2的diff算法
Jan 06 #Vue.js
You might like
PHP 服务器配置(使用Apache及IIS两种方法)
2009/06/01 PHP
Javascript中暂停功能的实现代码
2007/03/04 Javascript
js常用排序实现代码
2010/12/28 Javascript
基于jQuery的Tab选项框效果代码(插件)
2011/03/01 Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
2011/05/07 Javascript
js实现点小图看大图效果的思路及示例代码
2013/10/28 Javascript
JavaScript bold方法入门实例(把指定文字显示为粗体)
2014/10/17 Javascript
理解javascript中DOM事件
2015/12/25 Javascript
jQuery动态添加可拖动元素完整实例(附demo源码下载)
2016/06/21 Javascript
最细致的vue.js基础语法 值得收藏!
2016/11/03 Javascript
Asp.Net之JS生成分页条的方法
2016/11/23 Javascript
超全面的JavaScript开发规范(推荐)
2017/01/21 Javascript
angular使用post、get向后台传参的问题实例
2017/05/27 Javascript
angularjs使用gulp-uglify压缩后执行报错的解决方法
2018/03/07 Javascript
微信小程序block的使用教程
2018/04/01 Javascript
Vuex实现购物车小功能
2020/08/17 Javascript
使用webpack5从0到1搭建一个react项目的实现步骤
2020/12/16 Javascript
[01:20]PWL S2开团时刻第三期——团战可以输 蝙蝠必须死
2020/11/26 DOTA
Python使用百度API上传文件到百度网盘代码分享
2014/11/08 Python
Python编程中对文件和存储器的读写示例
2016/01/25 Python
在Django同1个页面中的多表单处理详解
2017/01/25 Python
TensorFlow卷积神经网络之使用训练好的模型识别猫狗图片
2019/03/14 Python
python通过链接抓取网站详解
2019/11/20 Python
浅谈TensorFlow中读取图像数据的三种方式
2020/06/30 Python
python实现图像外边界跟踪操作
2020/07/13 Python
torchxrayvision包安装过程(附pytorch1.6cpu版安装)
2020/08/26 Python
如何利用XMLHTTP检测URL及探测服务器信息
2013/11/10 面试题
内部类的定义、种类以及优点
2013/10/16 面试题
2013年办公室秘书的个人自我鉴定
2013/10/24 职场文书
顶撞领导检讨书
2014/01/29 职场文书
2014年妇女工作总结
2014/12/06 职场文书
小学生安全保证书
2015/05/09 职场文书
入学证明
2015/06/23 职场文书
预备党员入党思想汇报(范文)
2019/08/14 职场文书
python必学知识之文件操作(建议收藏)
2021/05/30 Python
Python+Tkinter制作专属图形化界面
2022/04/01 Python