Ant Design Vue中有关父子组件进行通信传值的问题

简介: Ant Design Vue中有关父子组件进行通信传值的问题
有关Ant Design Vue中父子之间进行传值的问题并不少见,作为一个后端程序员,当然也要学会,以下是一个简单的例子。
1、使用props:在父组件中定义一个属性,然后将其传递给子组件,在子组件中通过props接收该属性值。

父组件中:

<template>
  <div>
    <child-component :msg="message"></child-component>
  </div>
</template>
<script>
import ChildComponent from './ChildComponent.vue'
export default {
  components: {
    ChildComponent
  },
  data() {
    return {
      message: 'Hello World!'
    }
  }
}
</script>

子组件中:

<template>
  <div>
    {{ msg }}
  </div>
</template>
<script>
export default {
  props: {
  //这里使用'msg'其实也可以接收到对应父组件传来的数据。
    msg: {
      type: String,
      required: true
    }
  }
 props: ['msg']
  
}
</script>
2、使用emit:在子组件中定义一个事件,然后在父组件中监听该事件,接收子组件传递的数据。

父组件中:

<template>
  <div>
  //my-event 需要和子组件中定义的变量一致 可以随意定义。
    <child-component @my-event="handleEvent"></child-component>
  </div>
</template>
<script>
import ChildComponent from './ChildComponent.vue'
export default {
  components: {
    ChildComponent
  },
  methods: {
  //用于接收字组件传值的方法。
    handleEvent(data) {
      console.log(data)
    }
  }
}
</script>

子组件中:

<template>
  <div>
    <button @click="emitEvent">Click me</button>
  </div>
</template>
<script>
export default {
  methods: {
    emitEvent() {
      this.$emit('my-event', 'Hello World!')
    }
  }
}
</script>

ok 经过上面的步骤 就可以简单的实现父子之间组件的通信问题了~ 🎉

相关文章
|
11月前
|
JavaScript
Vue中如何实现兄弟组件之间的通信
在Vue中,兄弟组件可通过父组件中转、事件总线、Vuex/Pinia或provide/inject实现通信。小型项目推荐父组件中转或事件总线,大型项目建议使用Pinia等状态管理工具,确保数据流清晰可控,避免内存泄漏。
808 2
|
10月前
|
缓存 JavaScript
vue中的keep-alive问题(2)
vue中的keep-alive问题(2)
680 137
|
JavaScript 安全
在 Vue 中,如何在回调函数中正确使用 this?
在 Vue 中,如何在回调函数中正确使用 this?
606 0
|
JavaScript
Vue父子组件传值(porvide+inject实现组件通信)
如果我们需要把父组件的值传递给子组件,而且子组件可能存在层层嵌套,那么就可以使用provide+inject的方法来实现组件之间的通信
441 0
Vue父子组件传值(porvide+inject实现组件通信)
|
JavaScript 前端开发
前端-vue基础63-非父子组件传值
前端-vue基础63-非父子组件传值
250 0
前端-vue基础63-非父子组件传值
|
JavaScript
Vue父子组件传值通讯,超详细注释
Vue父子组件传值通讯,超详细注释
391 0
|
JavaScript 开发工具 git
23、vue父子组件之间的传值
前言:本章主要说下父子组件的传值,为商品列表组件之间的传值做一个基础预热。 Github:https://github.com/Ewall1106/mall(请选择分支chapter23) 1、父组件向子组件传值 (1)第一个就是要明白怎么在父页面中向子组件中传值? 你可以给子组件传入一个静态的值: 图片来自vue官网 但我们一般都是需要传动态的值,所以需要v-bind绑定: 图片来自vue官网 当然,你传的值可以是数字、对象、数组等等,参见vue官网。
1333 0
|
JavaScript
初识 Vue(15)---(父子组件传值)
父子组件传值 示例:父组件向子组件传递数据 在 Vue 中 ,父组件向子组件传值,通过属性的方式来进行传递 父子组件传值 var counter ={ p...
1421 0