Vue $emit $refs子父组件间方法的调用
2018-01-30 09:23
816 查看
1、$emit
子组件调用父组件的方法并传递数据 注意:子组件标签中的时间也不区分大小写要用“-”隔开
子组件:
<template> <button @click="emitEvent">点击我</button> </template> <script> export default { data() { return { msg: "我是子组件中的数据" } }, methods: { emitEvent(){ this.$emit('my-event', this.msg) //通过按钮的点击事件触发方法,然后用$emit触发一个my-event的自定义方法,传递this.msg数据。 } } } </script>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
父组件:
<template> <div id="app"> <child-a @my-event="getMyEvent"></child-a> <!--父组件中通过监测my-event事件执行一个方法,然后取到子组件中传递过来的值--> </div> </template> <script> import ChildA from './components/child.vue' export default { components: { ChildA }, methods: { getMyEvent(msg){ console.log('接收的数据--------->'+msg)//接收的数据--------->我是子组件中的数据 } } } b0a1 </script>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2、$refs
父组件调用子组件的方法,可以传递数据 注意:子组件标签中的时间也不区分大小写要用“-”隔开
父组件:
<template> <div id="app"> <child-a ref="child"></child-a> <!--用ref给子组件起个名字--> <button @click="getMyEvent">点击父组件</button> </div> </template> <script> import ChildA from './components/child.vue' export default { components: { ChildA }, data() { return { msg: "我是父组件中的数据" } }, methods: { getMyEvent(){ this.$refs.child.emitEvent(this.msg); //调用子组件的方法,child是上边ref起的名字,emitEvent是子组件的方法。 } } } </script>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
子组件:
<template> <button>点击我</button> </template> <script> export default { methods: { emitEvent(msg){ console.log('接收的数据--------->'+msg)//接收的数据--------->我是父组件中的数据 } } } </script>
相关文章推荐
- Vue $emit $refs子父组件间方法的调用
- Vue $emit $refs子父组件间方法的调用实例
- Vue兄弟组件之间如何调用对方的方法
- vue 2.0 父组件调用子组件中的方法
- vue 使用ref 让父组件调用子组件的方法
- vue组件之间的通信以及如何在父组件中调用子组件的方法和属性
- vue组件之间的通信以及如何在父组件中调用子组件的方法和属性
- vue 父组件调用子组件方法
- vue.js中父组件调用子组件的内部方法示例
- vue 子组件调用父组件的方法
- vue之子组件调用父组件的方法
- vue中子组件调用兄弟组件方法
- vue 使用ref 让父组件调用子组件的方法
- vue关于父组件调用子组件的方法
- vue 父组件调用子组件方法及事件
- vue 子组件调用父组件方法
- vue.js $refs和$emit 父子组件交互的方法
- vue,父组件调用子组件方法
- vue 父组件调用子组件方法解决方案
- vue中父组件调用子组件的方法和属性