Prop,EventBus,provide / inject,storage,Vuex
因为word文档粘过来格式有些错了 如果存在问题请和我说 我及时改正
如有错漏希望大家多多指教
Prop
常用的父子通信通过属性传递
父组件中:
function setData (val) {
this.data = val
}
<childen :title="data.title" :setData=’SetData’ />
子组件中:
收的时候有两种方式,一种是数组只要规定接收的参数有哪些就行,一种是对象可以对数据进行验证
Props: [ 'title', 'setData' ],
// type 是规定传入数据类型可以是下列原生构造函数中的一个: String Number Boolean Array Object Date Function Symbol
// required 规定传入值是否必须, true false
// default规定默认值可以是具体的值也可以是个构造函数return一个值出来
// validator 验证传入值是否符合规范
props:{
title: {
type: 'String',
required: true,
default: function (val) {
return 'aaa';
},
validator: function (val) {
// 这个值必须匹配下列字符串中的一个
return ['aaa', 'bbb', 'ccc'].includes(val);
}
}
},
一般情况下, 在子集中接收的数据我们不能修改其数据, 容易造成数据修改后不响应的问题. 所以可以传递一个修改数据的function,对其进行规范.
EventBus
初始化, 自定义个时间总线传递器
//main.js
//方式一
Vue.prototype.$EventBus = new Vue();
//方式二</