Vue给div的click加上.native就不起效果了!!不加反而是好的,这是什么原因呢?
<template>
<div class="ys-float-btn" :style="{'width':itemWidth+'px','height':itemHeight+'px','left':left+'px','top':top+'px'}"
ref="div"
@click ="onBtnClicked"> <!--这个地方为什么加上.native就失效了?-->
<slot name="icon"></slot>
<p>{{text}}</p>
</div>
</template>
如上所述
在网上找到一段解释
在组件上绑定事件,你不加 .native修饰符 告诉它是这是原生点击事件,它会以为这是你定义的自定义事件。
在methods里定义的onBtnClicked()是事件触发后调用的函数。 在组件上直接绑click ,Vue 会认为是绑定了一个叫click的自定义事件,当子组件有 名为‘click’ 的事件被emit上来后, 才会执行你的show函数。
当我加上native之后,直接监听的dom原生事件。当div被click之后应该会触发才对啊?
这里先留一个坑,解决了再贴上自己的理解。