如何在Vue中触发点击事件[关闭]

Posted

技术标签:

【中文标题】如何在Vue中触发点击事件[关闭]【英文标题】:How can I trigger a click event in Vue [closed] 【发布时间】:2017-12-21 15:47:38 【问题描述】:

事情就是这样。 我在子组件中有一个按钮,当我单击该按钮时,它会发出一个事件。我想在挂载父组件的时候触发,怎么办?还是有其他方法可以达到目标? PS:按钮是通过子组件中的v-for生成的。

【问题讨论】:

你能添加一些代码吗? 你可以在mounted钩子里手动调用一个监听器。如果没有帮助,请分享一些代码。 监听器需要来自子组件的一些参数。我不认为代码会有帮助,所以我没有把它放在这里。 【参考方案1】:

您的子组件可能如下所示:

<template>
  <div class="child">
    <button @click="buttonClick">Button</button>
  </div>
</template>

<script>
  export default 
    props: ['buttonId'],
    methods:
      buttonClick() 
        this.$emit('buttonClick', this.buttonId)
      
    
  
</script>

还有你的父组件:

<template>
  <div class="parent">
    <child v-for="i in 5" :buttonId="i"></child>
  </div>
</template>

<script>
  import Child from './Child.vue'

  export default 
    components: 
      Child,
    ,
    methods: 
      onButtonClick(buttonId) 
        console.log('Got a click event from button ', buttonId)
      
    ,
    mounted() 
      this.$children.forEach(child => 
        child.buttonClick()
      )
    
  
</script>

【讨论】:

以上是关于如何在Vue中触发点击事件[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用Vue.js中的按钮点击事件并获取按钮属性

如何在 vue 中触发没有 $refs 的点击事件?

vue 的点击事件怎么获取当前点击的元素

如何在Angular项目里监听页面关闭、跳转事件?

自定义vue点击事件传递数据

Vue中 点击触发按钮 请求接口