前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >VUE2.0 学习(二十八)vuex 综合学习

VUE2.0 学习(二十八)vuex 综合学习

作者头像
一写代码就开心
发布2021-11-01 11:00:47
1710
发布2021-11-01 11:00:47
举报
文章被收录于专栏:java和pythonjava和python

目录

什么是vuex

在这里插入图片描述
在这里插入图片描述

他是一个插件

多组件共享数据

一个组件A里面的数据,有n多个组件需要用这个数据,那么可以用事件总线进行实现这个功能,但是这些n多个组件都要一个组件里面的数据,事件总线是可以实现,但是不好实现。

vuex

这个就是一个共享区域,将共享的数据放到这个区域,以后哪个组件想要获取这些数据,或者修改数据,直接从这个区域拿就可以了。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

vuex 工作原理

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

state

这个就是存放数据的,可以保存很多的数据

在这里插入图片描述
在这里插入图片描述

搭建vuex 环境

1 安装

在这里插入图片描述
在这里插入图片描述

2 这个是一个插件,现在使用插件

因为管理vuex的是store仓库,这个仓库管理

在这里插入图片描述
在这里插入图片描述

所以我们需要创建 actions mutations state 3个的对象,并且创建store对象,store对象要使用那3个对象,代码的写法是(按照这个逻辑写就行,要和我写的框架一样)

在这里插入图片描述
在这里插入图片描述

index .js 里面的代码是

代码语言:javascript
复制
//该文件用于创建Vuex中最为核心的store
import Vue from 'vue'
//引入Vuex
import Vuex from 'vuex'
//应用Vuex插件
Vue.use(Vuex)

//准备actions--------——用于响应组件中的动作
//对象里面的东西改为自己的
const actions = {

	jiaOdd(context,value){
		console.log('actions中的jiaOdd被调用了')
		if(context.state.sum % 2){
			context.commit('JIA',value)
		}
	},
	jiaWait(context,value){
		console.log('actions中的jiaWait被调用了')
		setTimeout(()=>{
			context.commit('JIA',value)
		},500)
	}
}
//准备mutations——===========用于操作数据(state)
//对象里面的东西改为自己的
const mutations = {
	JIA(state,value){
		console.log('mutations中的JIA被调用了')
		state.sum += value
	},
	JIAN(state,value){
		console.log('mutations中的JIAN被调用了')
		state.sum -= value
	}
}
//准备state——用于存储数据
//对象里面的东西改为自己的
const state = {
	sum:0 //当前的和
}

//创建并暴露store
// key   value  相同,用简写
export default new Vuex.Store({
	actions,
	mutations,
	state,
})

创建完成上面的东西,在main.js里面引入这个index.js

在这里插入图片描述
在这里插入图片描述

以上代码完成之后,vm身上就有store 这个仓库了。

3 总结

vuex 就是一个插件,里面有一个store仓库,学习vuex最主要的就是学习这个store仓库

我们自己写index.js。里面就是插件store仓库,之后将多个组件都需要使用的变量放到这个store里面,之后在组件里面进行使用这个store仓库,那么组件里面是如何进行使用呢?

写法是这样:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

这个是组件里面的代码

在这里插入图片描述
在这里插入图片描述

4 变量需要经过一定的操作 getters

就是vuex里面的变量,需要一定的复杂的操作 给用户使用,如何写

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-10-28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 目录
  • 什么是vuex
  • 多组件共享数据
  • vuex
  • vuex 工作原理
    • state
    • 搭建vuex 环境
      • 1 安装
        • 2 这个是一个插件,现在使用插件
          • 3 总结
            • 4 变量需要经过一定的操作 getters
            相关产品与服务
            事件总线
            腾讯云事件总线(EventBridge)是一款安全,稳定,高效的云上事件连接器,作为流数据和事件的自动收集、处理、分发管道,通过可视化的配置,实现事件源(例如:Kafka,审计,数据库等)和目标对象(例如:CLS,SCF等)的快速连接,当前 EventBridge 已接入 100+ 云上服务,助力分布式事件驱动架构的快速构建。
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档