Vue — props父组件向子组件传递数据的基本使用

  • Post author:
  • Post category:vue


例一:在同级目录下分别创建了

父组件propsparent.vue



子组件propschild.vue


首先要在

父组件propsparent.vue

中调用子组件

重要的三个步骤:

1、

import propschild from "./propschild";


2、在

components

中写入

"propschild



propschild

是子组件名

3、在div中写入

<propschild :sendson="sendson"></propschild>

,其中

sendson

可以自己命名,用来传递数据给子组件

<template>
	<div>
		<h3>Prop父组件</h3>
		<propschild :sendson="sendson"></propschild>
	</div>
</template>

<script>
	import propschild from "./propschild";
	
	export default{
		name:"PropParent",
		data(){
			return{
				sendson:"父组件传给子组件的数据"
			}
		},
		components:{
			propschild
		}
	}
</script>

<style>
</style>

接下来是子组件接收数据

1、首先要在

export default

中写入

props:["sendson"]

,如下代码

2、然后写个标签元素,或者不写,写上代码

{

{sendson}}

即可

注意:

props:["sendson"]

中的

sendson

是父组件中

:sendson

带有冒号的绑定属性,不要混淆了

<template>
	<div>
		<h3>Prop子组件</h3>
		<p>接收父组件传来的数据:{{sendson}}</p>
	</div>
</template>

<script>
	export default{
		name:"PropChild",
		data(){
			return{
				
			}
		},
		props:["sendson"]
	}
</script>

<style>
</style>

最终效果如下图

在这里插入图片描述


props的另外写法:


1、type为接收的数据的类型

2、required为是否为必传,true表示必须得有sendson这个属性,反之则为不是必传

3、default为默认值,即如果父组件的对应属性没有传值,则显示自定义的默认值(如图一)

props:{
	sendson:{
		type:String,
		required:false,
		default:"默认的"
	}
}

在这里插入图片描述



版权声明:本文为qq_21980517原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。