【无标题】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


vue概述

提示:这里可以添加本文要记录的大概内容:

组件之间共享数据的方式

父向子传值:v-bind 属性绑定
子向父传值:v-on 时间绑定
兄弟组件之间共享数据:EventBus
$on 接收数据的那个组件
$emmit 发送数据的那个组件

提示:以下是本篇文章正文内容,下面案例可供参考

1、VUEX是什么?

VUEX是实现组件全局状态(数据)管理的一种机制,可以方便啊的实现组件之间数据的共享

1.2使用vuex同意管理状态的好处

能够在vuex中集中管理共享的数据,易于后期维护
能够高效实现组件之间的数据共享,提高开发效率
存储在vuex中的数据都是响应式的,能够剖实时保持数据与页面的同步

1.3 什么样的数据适合存储在vuex中

一般情况下  只有组件之间共享的数据,才有必要存储到vuex当中,对于组件中的私有数据,一句存储在组件自身的data中即可

2。vue的基本使用

state的使用

在这里插入图片描述

在这里插入图片描述

3.3mutation 用于变更store中的数据

只能通过mutation变更store数据,不可以直接操作store中的数据
通过这种方式虽然繁琐 ,但是可以集中监控所有数据的变化

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

3.4 actions 异步操作数据的方式

changeScore(context,data){
  //在actions中访问mutations
  context.commit(SET_SCORE,data)
}

3.5 getters 从现有的状态计算出新的数据

level(state){
   return state.user.score/100
}

二。传参

1.组件的传参

i. 父传子  props
ii.子传父  事件$emit
iii.引用父组件$parent √
iv.引用子组件
	$children  √
	$refs  √
iiv.引用根组件
	$root

根组件 最大组件

1事件bus传参

(跨层级访问数据)
(非父子关系)
1. 创建bus.js

			import Vue from 'vue'
			var bus  = new Vue();
			export default bus;
	2. 在要发送数据的组件中导入bus并使用 bus.$emit
	3. 在有接收数据的组件中导入bus 并使用 bus.$on  (注意this)
	注意:任意组件只要导入bus 就可以随意的 发送与监听数据

bus.$on(eventname,callback) 监听事件
bus.$emit(eventname,data)发送事件
bus.$off(eventname)移除事件

provider和inject 依赖注入 跨层级访问(只读)

provide提供数据
所有子孙都可以通过inject注入数据
inject 接收父辈组件提供的数据
Vuex全局数据共享

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值