接收数据
前台设置
:data=循环的每个对象
后台设置
export default {
props:['data'],
template:``
}
props内的数据为什么,App中标签的属性的就相对应的可以填入什么
单项数据流
- 父组件=>子组件传递数据
- 注意引用类型
★数据传递
父组件:
子组件:
父组件通过v-bind 将父组件中的数据传递到子组件中
子组件通过props开放数据接收端口,子组件即可使用父组件传递的数据
props内定义的数据相当于子组件中data定义的数据,都是数据,只不过是父组件传递的数据.
非Proprs属性
父级设置的,会自动放在子级根元素标签上
在子组件中指定属性位置放置,在其标签上设置
注意:非props属性可以自动传递,在未禁用默认传递时,父组件@click会自动传递到自组件中。属性是也类似,可以利用这个特性,直接在父组件上使用@作为非props传递而非v-bind作为绑定数据传递。如果禁用了默认传递,子组件使用v-bind接收,如下。
jsinheritAttrs:false 阻止默认传递 v-bind="%attrs" 批量设置 :id="xxx" 单独设置
方法与属性传递
总的思路有两种
- 一是通过$attrs,使用父子组件默认传递 + inheritAttrs :false
- 二是通过emits
父级组件设置方法=>通过v-bind=""绑定属性或者方法
子组件在props里接收
- 如果是方法,其type为Function
- 如果是属性,其type为String
方法在子组件触发