最近再写vue3项目,有个需求在各个icon中给元素点击事件,由于我是用的gridstack,所以需要给每个gridstack的item绑定点击事件,然后通过点击事件来获取当前点击的元素。
本来想用vue常见的@click,但是写了不生效,所以换成了原生的事件,在js中点击事件如下:
const el = `
<div
onClick = 'handleClick(${JSON.stringify(option)})' >
点我
</div>
`;
然后是定义事件
const handleClick = (option: Object) => {
console.log(option)
}
生命周期window下挂载该事件
onMounted(() => {
// .......
window.handleClick = handleClick
});
完成以上步奏即可