Skip to content

接收数据

前台设置
:data=循环的每个对象
后台设置
export default {
	props:['data'],
	template:``
}

props内的数据为什么,App中标签的属性的就相对应的可以填入什么

单项数据流

  • 父组件=>子组件传递数据
  • 注意引用类型

★数据传递

父组件:

子组件:

  1. 父组件通过v-bind 将父组件中的数据传递到子组件中

  2. 子组件通过props开放数据接收端口,子组件即可使用父组件传递的数据

  3. props内定义的数据相当于子组件中data定义的数据,都是数据,只不过是父组件传递的数据.


非Proprs属性

  • 父级设置的,会自动放在子级根元素标签上

  • 在子组件中指定属性位置放置,在其标签上设置

  • 注意:非props属性可以自动传递,在未禁用默认传递时,父组件@click会自动传递到自组件中。属性是也类似,可以利用这个特性,直接在父组件上使用@作为非props传递而非v-bind作为绑定数据传递。如果禁用了默认传递,子组件使用v-bind接收,如下。

    js
    inheritAttrs:false			阻止默认传递
    
    v-bind="%attrs"  			批量设置
    :id="xxx"					单独设置

方法与属性传递

  • 总的思路有两种

    • 一是通过$attrs,使用父子组件默认传递 + inheritAttrs :false
    • 二是通过emits
  • 父级组件设置方法=>通过v-bind=""绑定属性或者方法

  • 子组件在props里接收

    • 如果是方法,其type为Function
    • 如果是属性,其type为String
  • 方法在子组件触发