vue 父传子 子传父实现方式

父传子:

主要步骤:

  1. 首先在子组件props中创建一个属性,用以接收父组件传过来的值;
  2. 然后父组件中引用子组件,并在子组件标签中添加子组件props中创建的属性;
  3. 最后把需要传给子组件的值赋给该属性。

理解:

        父亲传给儿子东西,儿子在那边用一个碗接,这个碗就是props,因为传的东西不可能只是一个,所以是一个数组,父亲因为要传东西到儿子的碗里,所以要绑定儿子的碗,然后传值

props:properties的简称

prop 只可以从上一级组件传递到下一级组件(父子组件),即所谓的单向数据流。而且 prop 只读,不可被修改,所有修改都会失效并警告。

代码如下:

父组件:

 子组件:

 

子传父:

主要步骤:

        1.子组件创建并监听自定义事件,

        2.在事件函数里面执行emit函数,通过emit把想传的值传给父组件

        3.父组件在子组件上监听emit定义的事件名称并绑定自身的函数,在函数的参数中接收子组件传递的参数。

理解:

儿子传给父亲,儿子通过emit去传值,父亲通过on去接收值

$emit( 传输的名字 ,想传的值)

代码如下:

父组件:

 子组件:

 

Vue中父组件向子组件传递数据可以通过props属性实现,子组件向父组件传递数据可以通过$emit方法实现。 具体来说,父组件通过在子组件标签上绑定属性的方式向子组件传递数据,例如: ```html <template> <div> <child-component :prop-name="parentData"></child-component> </div> </template> <script> import ChildComponent from './ChildComponent.vue' export default { components: { ChildComponent }, data() { return { parentData: 'Hello from parent component' } } } </script> ``` 在子组件中,可以通过props属性接收父组件传递的数据,例如: ```html <template> <div>{{ propName }}</div> </template> <script> export default { props: { propName: String } } </script> ``` 子组件向父组件传递数据可以通过$emit方法实现,例如: ```html <template> <div> <button @click="sendDataToParent">Send Data to Parent</button> </div> </template> <script> export default { methods: { sendDataToParent() { this.$emit('event-name', 'Data from child component') } } } </script> ``` 在父组件中,可以通过在子组件标签上绑定事件的方式接收子组件传递的数据,例如: ```html <template> <div> <child-component @event-name="handleDataFromChild"></child-component> </div> </template> <script> import ChildComponent from './ChildComponent.vue' export default { components: { ChildComponent }, methods: { handleDataFromChild(data) { console.log(data) // 'Data from child component' } } } </script> ```
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值