如何实现Vue组件间长尾词的爷组件接收孙组件通信?

2026-04-09 13:391阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计552个文字,预计阅读时间需要3分钟。

如何实现Vue组件间长尾词的爷组件接收孙组件通信?

如何将孙组件内特定的数据传递给父组件?例如,将孙组件的名字传递给父组件并在父组件上显示。

思路:在孙组件被点击后,使用`emit`事件发送数据到父组件。发送的数据包括事件编号1和孙组件的名字。在父组件中,监听孙组件发出的`emit`事件,并接收数据。

具体步骤:

1.在孙组件中,在被点击事件处理函数中使用`this.$emit`发送事件。

2.发送的数据包括事件编号1和孙组件的名字。

3.在父组件中,使用`v-on`监听孙组件发出的`emit`事件。

4.接收事件和数据,并在父组件上显示孙组件的名字。

如何把孙组件内特定的数据传给爷组件?

例如

如何实现Vue组件间长尾词的爷组件接收孙组件通信?

把孙组件的名字传给爷组件并在爷组件上显示

思路

  • 在孙组件被点击后 emit 事件 1 和孙组件的名字
  • 在父组件上监听孙组件 emit 出的事件 1,再次 emit 事件 2
  • 在爷组件上监听父组件 emit 出的事件 2,并触发处理函数
  • 这个处理函数将父组件传出的子组件名字显示在父组件上

<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title></title> <script src="img.558idc.com/uploadfile/allimg/210605/1Q92061J-0.jpg"></script> </head> <body> <div id="app"> child name: {{child}} <parent v-on:say2='greeting("child", $event)'></parent> </div> </body> <script> Vue.component('parent', { template: ` <div> <child v-on:say1='$emit("say2", $event)'></child> </div> ` }) Vue.component('child', { template: ` <div> child <button v-on:click='$emit("say1", "Jack")'>greeting</button> </div> ` }) new Vue({ el: '#app', data: { child: '', }, methods: { greeting: function (key, value) { this[key] = value }, } }) </script> </html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

标签:实现

本文共计552个文字,预计阅读时间需要3分钟。

如何实现Vue组件间长尾词的爷组件接收孙组件通信?

如何将孙组件内特定的数据传递给父组件?例如,将孙组件的名字传递给父组件并在父组件上显示。

思路:在孙组件被点击后,使用`emit`事件发送数据到父组件。发送的数据包括事件编号1和孙组件的名字。在父组件中,监听孙组件发出的`emit`事件,并接收数据。

具体步骤:

1.在孙组件中,在被点击事件处理函数中使用`this.$emit`发送事件。

2.发送的数据包括事件编号1和孙组件的名字。

3.在父组件中,使用`v-on`监听孙组件发出的`emit`事件。

4.接收事件和数据,并在父组件上显示孙组件的名字。

如何把孙组件内特定的数据传给爷组件?

例如

如何实现Vue组件间长尾词的爷组件接收孙组件通信?

把孙组件的名字传给爷组件并在爷组件上显示

思路

  • 在孙组件被点击后 emit 事件 1 和孙组件的名字
  • 在父组件上监听孙组件 emit 出的事件 1,再次 emit 事件 2
  • 在爷组件上监听父组件 emit 出的事件 2,并触发处理函数
  • 这个处理函数将父组件传出的子组件名字显示在父组件上

<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <title></title> <script src="img.558idc.com/uploadfile/allimg/210605/1Q92061J-0.jpg"></script> </head> <body> <div id="app"> child name: {{child}} <parent v-on:say2='greeting("child", $event)'></parent> </div> </body> <script> Vue.component('parent', { template: ` <div> <child v-on:say1='$emit("say2", $event)'></child> </div> ` }) Vue.component('child', { template: ` <div> child <button v-on:click='$emit("say1", "Jack")'>greeting</button> </div> ` }) new Vue({ el: '#app', data: { child: '', }, methods: { greeting: function (key, value) { this[key] = value }, } }) </script> </html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持自由互联。

标签:实现