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实现广告栏上下滚动效果
Nov 26 Vue.js
vue+openlayers绘制省市边界线
Dec 24 Vue.js
利用Vue实现简易播放器的完整代码
Dec 30 Vue.js
Vue中强制组件重新渲染的正确方法
Jan 03 Vue.js
Vue 3自定义指令开发的相关总结
Jan 29 Vue.js
基于vue的video播放器的实现示例
Feb 19 Vue.js
vue实现锚点定位功能
Jun 29 Vue.js
vue使用Google Recaptcha验证的实现示例
Aug 23 Vue.js
Vue中使用import进行路由懒加载的原理分析
Apr 01 Vue.js
vue整合百度地图显示指定地点信息
Apr 06 Vue.js
vue实现可以快进后退的跑马灯组件
Apr 08 Vue.js
vue使用element-ui按需引入
May 20 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 清除网页病毒的方法
2008/12/05 PHP
destoon实现VIP排名一直在前面排序的方法
2014/08/21 PHP
laravel 如何实现引入自己的函数或类库
2019/10/15 PHP
php使用自带dom扩展进行元素匹配的原理解析
2020/05/29 PHP
srcElement表格样式
2006/09/03 Javascript
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
jQuery取得设置清空select选择的文本与值
2014/07/08 Javascript
详解JavaScript的变量和数据类型
2015/11/27 Javascript
浅析jQuery移动开发中内联按钮和分组按钮的编写
2015/12/04 Javascript
javascript中sort排序实例详解
2016/07/24 Javascript
javascript cookie基础应用之记录用户名的方法
2016/09/20 Javascript
轻松实现js选项卡切换效果
2016/09/24 Javascript
Angular4如何自定义首屏的加载动画详解
2017/07/26 Javascript
vue 弹窗时 监听手机返回键关闭弹窗功能(页面不跳转)
2019/05/10 Javascript
js实现全选和全不选功能
2020/07/28 Javascript
python继承和抽象类的实现方法
2015/01/14 Python
Python中Selenium模拟JQuery滑动解锁实例
2017/07/26 Python
Python实现简易版的Web服务器(推荐)
2018/01/29 Python
python3+PyQt5+Qt Designer实现堆叠窗口部件
2018/04/20 Python
Python基于pandas实现json格式转换成dataframe的方法
2018/06/22 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
Python实现屏幕录制功能的代码
2020/03/02 Python
CSS3效果:自定义“W”形运行轨迹实例
2017/03/29 HTML / CSS
Html5调用手机摄像头并实现人脸识别的实现
2018/12/21 HTML / CSS
财务部岗位职责
2013/11/19 职场文书
我的网上商城创业计划书
2013/12/26 职场文书
化学教师教学反思
2014/01/17 职场文书
端午节粽子促销活动方案
2014/02/02 职场文书
毕业生写求职信的要点
2014/03/04 职场文书
大学课外活动总结
2014/07/09 职场文书
文秘班元旦晚会活动策划方案
2014/08/28 职场文书
党员民主生活会个人整改措施材料
2014/09/16 职场文书
婚前财产协议书范本
2014/10/19 职场文书
2014年仓管员工作总结
2014/11/18 职场文书
Spring依赖注入多种类型数据的示例代码
2022/03/31 Java/Android
HTML实现仿Windows桌面主题特效的实现
2022/06/28 HTML / CSS