1,属性传值 在父组件子组件的标签上自定义属性 跟上要穿的值 父组件用 props接收
props接收值两种方式
数组形式:props:[]
对象形式:props:{ 自定义属性名:{
type:数据类型,
default:默认值,父组件没有传递值展示的默认值,
requried:true(为必填项),false(默认值)
validator:function(val){ } 验证父组件传值是否符合条件
} }
2,事件传值 在子组件 定义事件 用this.$emit('自定义事件名',参数)在父组件用自定义事件名来接收,
3,兄弟传值 在main.js 中 Vue.prototype.$bus=new Vue()
在子组件1 通过this.$bus.$emit('事件名',传递的参数)
在子组件2 通过this.$bus.$on('事件名',(res)=>{res是传递的参数})
4,vuex 是状态管理工具 存放公共数据,vuex数据任何组件都可以访问到 一般不推荐用于组件传值
5,本地存储
localStorage 本地存储
sessionStorage 会话存储
存放在本地的数据任何页面都可以访问到
6,this.$parent(获取父组件实例),this.$children(获取子组件实例)
7,在子组件标签上定义refs属性 用this.$refs获取子组件实例
8,this.$attrs 在子组件中可以获取到父组件子组件标签上的属性,切属性不能在props中接收 props接收过得属性获取不到