[Vue] 给组件绑定原生事件

NATIVE EVENT

例子

  • 参考代码:code
  • 实现功能:
给组件绑定原生事件的两种实现方法

方法一

  • 注意
声明一个组件:
var child = {
	template: '<div>Click</div>',
}

使用组件并且绑定事件:
<child @click="handleClick"></child>

事件方法实现:
methods: {
	handleClick: function(){
		alert("Hello Native Event")
	}
}
  • ps
    你会发现,这个click事件并没有执行
  • 原因
    这样写等于在父组件中监听child子组件的一个叫click的自定义事件,然而这个事件没有在子组件中声明和发射出来,所以是无法执行的。
  • 解决方案:
声明一个组件:
var child = {
	template: '<div @click="handleClick">Click</div>',
	methods:{
		handleClick:function(){
			this.$emit('click')
		}
	}
}

使用组件并且绑定事件:
<child @click="handleClick"></child>

事件方法实现:
methods: {
	handleClick: function(){
		alert("Hello Native Event")
	}
}

ps: 这样外部方法就可以实现了,但是这样写实在是太麻烦了,所以建议使用方法二

方法二

  • 声明组件
var childOne = {
	template: '<div>Click</div>'
}
  • 使用native关键字给组件绑定原生事件
<child-one @click.native="handleClick"></child-one>
  • 实现事件
methods: {
	handleClick: function(){
		alert("Hello Native Event")
	}
}
  • 这样就大功告成啦
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值