一、父组件向子组件传值
1、定义父组件
(1)、父组件想要向子组件传值时,那么需要在子组件引入的地方绑定一个属性,属性值就是要传的数据,并且要在父组件中引入子组件。
(2)、这个自定义属性的属性值是用来存放父组件向子组件传递的数据。
(3)、在这里,userName即是要传的数据,需要在data定义,所以当传递的数据是string类型时,可以在data定义为 userName:''
父组件如下:
2、定义子组件
(1)、子组件使用props属性接收父组件传递过来的值。
写法是:
props:{
父组件自定义的属性:该值的类型,
required:true
}
在这里就是如下写法:
props: {
inputName: String,
required: true
}
(2)、然后可以直接在页面上以这个形式“{{}}”引用。
子组件代码如下所示:
3、代码
(1)、父组件代码:
<template>
<div>
父组件:
<input type="text" v-model="userName">
<!-- 引入子组件 -->
<child :inputName="userName"></child>
</div>
</template>
<script>
import child from './child'
export default {
components: {
child
},
data () {
return {
userName: ''
}
}
}
</script>
(2)、子组件代码:
<template>
<div>
子组件:
<span>{{inputName}}</span>
</div>
</template>
<script>
export default {
// 接受父组件的值
props: {
inputName: String,
required: true
}
}
</script>