18910140161

Click怎么获取点击的组件?

顺晟科技

2021-06-19 08:06:37

195

<my-button @click="click">点击</my-button>


顺晟科技:

我隐约觉得你想错了方向。但如果你一定要这么做,可以通过自定义指令实现这个效果:

要做框架,不是做具体业务。框架要提供相关方法。

my-button组件触发click事件的时候,把组件标识带上就行了,比如

为什么要在父组件监听子组件的事件并访问子组件的状态,而不是在子组件里完成业务呢?

没有。如果你能访问根组件,可以尝试通过遍历 VDOM 寻找匹配项并找到组件实例的引用

在my-button组件内封装$emit(‘click’,this)

this.$emit('click', this.cid)

谢谢各位,其实click只是举个例子,不一定是click,也可能是onmouseover之类的任何事件。甚至这个html元素不是通过事件,而是通过document.querySelector()获取的。我的需求说清楚一点就是,给定了一个HTML元素对象,怎么获取这个元素对应的组件?vue有没有提供某种快捷的获取途径?

代码仅供示意,请根据你的具体业务调整逻辑实现。

相关文章
我们已经准备好了,你呢?
2024我们与您携手共赢,为您的企业形象保驾护航