Vue父、子组件传参,子组件监听父组件参数变化:

父组件:

子组件:

  1. 传参

父组件向子组件传参:父组件v-model双向绑定需要传递的参数,例如: sonIndex =” fuIndex”, sonIndex是子组件接收到的参数名字(名字可变化), fuIndex是父组件传给子组件的参数。子组件的props代表接收参数,type为参数格式,可为“String/Boolean/Array/JSON”等,default是当接收到的参数为空时,默认的参数值

父:

子:

子组件向父组件传参:采用$emit方法

子:

父:v-on双向绑定传参事件

         2.子组件监听父组件某参数变化

采用watch监听器,监听参数变化,sonindex为监听的某个参数名称,若这个参数发生变化,则触发监听器执行sonindex()函数里面的语句

子组件:

Vue中,组件可以通过props向组件传递数据,但是组件不能直接修改组件的数据。如果需要修改组件的数据,可以通过在组件中触发事件来实现。具体步骤如下: 1. 在组件中定义一个数据属性,并将其作为props传递给组件。 2. 在组件中,通过$emit方法触发一个自定义事件,并将需要修改的数据作为参数传递给组件。 3. 在组件中,通过监听组件的自定义事件,并在事件处理函数中修改相应的数据。 下面是一个示例代码: 组件: ```vue <template> <div> <p>组件数据:{{ parentData }}</p> <child :child-data="parentData" @update-parent-data="updateParentData"></child> </div> </template> <script> import Child from './Child.vue' export default { components: { Child }, data() { return { parentData: '组件初始数据' } }, methods: { updateParentData(data) { this.parentData = data } } } </script> ``` 组件: ```vue <template> <div> <p>组件数据:{{ childData }}</p> <button @click="updateChildData">修改组件数据</button> </div> </template> <script> export default { props: { childData: { type: String, required: true } }, methods: { updateChildData() { const newData = '组件修改后的数据' this.$emit('update-parent-data', newData) } } } </script> ``` 在上面的示例中,组件中定义了一个数据属性parentData,并将其作为props传递给组件组件中通过$emit方法触发了一个名为update-parent-data的自定义事件,并将需要修改的数据作为参数传递给组件组件监听组件的自定义事件,并在事件处理函数中修改了parentData的值。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值