使用情况
【注意】 普通组件绑定事件不能添加.native, 添加后事件失效
当父组件调用自定义组件时,直接在自定义组件中使用原生事件,原生事件后就需要加上.native。
还有一个方法,就是自定义组件$emit一个事件给父组件
<div id="app">
<child @click.native="handleClick"></child>
</div>
// 子组件
Vue.component('child',{
template: '<button><div>miya</div></button>',
})
const app = new Vue({
el: '#app',
methods: {
handleClick: function() {
alert("click")
}
}
})
当使用库组件中的form,提交submit也需要加.native
组件
<div>
<lost name="body"></slot>
<input type="submit" @click="handleOk"></input>
</div>
<--! .prevent 阻止默认提交事件 --->
调用组件
<my-model>
<Form slot="body" v-model="formDate" @submit.native.prevent>
<FormItem>...</FormItem>
</Form>
</my-model>
比如element,这个时候使用按键修饰符需要加上.native, 不然无效
<el-input v-model="account" placeholder="请输入账号" @keyup.enter.native="search">
</el-input>
// 使用原生事件名只有加上.native才会其效果, 比如 mousedown, mouseenter, mouseleave等
// 常用键盘事件名
.enter
.tab
.delete (捕获 “删除” 和 “退格” 键)
.esc
.space
.up
.down
.left
.right