vue2组件之间传值方式,父子,子父,兄弟,v-model ,provide和inject,$parent和$children
创始人
2024-02-29 07:17:22

1.父组件向子组件传值

//子组件中使用props进行数据接收

2.子传父事件传值

1.在子组件中使用v-on进行事件绑定,使用emit发送数据(@click="handleClick(item.value))this.emit发送数据(@click="handleClick(item.value)) this.emit发送数据(@click="handleClick(item.value))this.emit(‘handleClick’, val)
2.在父组件中自定义事件用于接收传过来的值,使用$on接收数据(@handleClick)

//父组件

3.兄弟组件之间传值:EventBus

 1.首先在父组件进行组件挂载2.新建一个公共的js文件 bus.js  代码impourt vue form 'vue  export default  new  vue3.在需要传值的子组件中进行公共JS文件的引入 import bus  from '@/components/utils/bus.js'4.在传值的子组件中使用$emit进行传值  bas.$emit (‘’,this.cuanzhi)
在接收值的组件中使用$on进行接收(写在钩子函数中,mounted!!!)

4.provide和inject

1.父组件中通过provide来提供变量,然后在子组件中通过inject来注入变量

//父组件//子组件 //接收到的值
{{content}}

5.v-model

//父组件//子组件 //接收到的值
子组件 接收到的值{{value}}

6. parent和parent和parent和children

子组件通过parent对父组件进行操作,父组件通过parent对父组件进行操作,父组件通过parent对父组件进行操作,父组件通过children对子组件进行操作。

子组件调用父组件的方法 this.parent.方法名()父组件调用子组件的方法this.parent.方法名() 父组件调用子组件的方法 this.parent.方法名()父组件调用子组件的方法this.children.方法名()

//父组件//子组件 //接收到的值
子组件 接收到的值{{$parent.str}}

相关内容

热门资讯

中证A500ETF摩根(560... 8月22日,截止午间收盘,中证A500ETF摩根(560530)涨1.19%,报1.106元,成交额...
A500ETF易方达(1593... 8月22日,截止午间收盘,A500ETF易方达(159361)涨1.28%,报1.104元,成交额1...
何小鹏斥资约2.5亿港元增持小... 每经记者|孙磊    每经编辑|裴健如 8月21日晚间,小鹏汽车发布公告称,公司联...
中证500ETF基金(1593... 8月22日,截止午间收盘,中证500ETF基金(159337)涨0.94%,报1.509元,成交额2...
中证A500ETF华安(159... 8月22日,截止午间收盘,中证A500ETF华安(159359)涨1.15%,报1.139元,成交额...