vue学习笔记之给组件绑定原生事件操作示例


Posted in Javascript onFebruary 27, 2020

本文实例讲述了vue学习笔记之给组件绑定原生事件操作。分享给大家供大家参考,具体如下:

当在父组件中定义一个点击事件,并且在父组件的methods中定义了这个点击事件时,在页面上点击并不会有什么反应。那么该怎么办呢?

我们可以在子组件的template中的dom上定义一个点击事件(原生事件),并且在子组件的methods中定义该点击事件,然而点击页面时也只会alert(child click )

这是为什么呢?父组件的点击事件被vue当成自定义事件,点击后没有检测到,这时需要子组件向父组件触发点击'自定义'事件,即 this.$emit('change') 。then,完成。先响应了child click,然后响应了click。

<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
  <meta charset="UTF-8">
  <title>组件参数的校验</title>
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
  <child @change="handleClick"></child>  <!--此处父组件,相当于自定义事件-->
</div>
</body>
</html>
<script>
  Vue.component('Child', {
    template: '<div @click="handleChildClick">child</div>',   /* 原生事件 */
    methods:{
      handleChildClick:function () {
        alert("child click")
        this.$emit('change') // 向父组件传递自定义事件
      }
    }
  })
  var vm = new Vue({
    el: '#app',
    methods:{
      handleClick:function () {
        alert("click");
      }
    }
  })
</script>

但是这样好麻烦哦!!怎么办呢?

我们可以直接在父组件定义的@click后面加上native,告诉vue我定义的事件就是原生事件!!就一切?了

like this:

<!DOCTYPE html>
<html lang="en" xmlns:v-bind="http://www.w3.org/1999/xhtml">
<head>
  <meta charset="UTF-8">
  <title>组件参数的校验</title>
  <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
</head>
<body>
<div id="app">
  <child @click.native="handleClick"></child>  <!--此处声明,原生事件-->
</div>
</body>
</html>
<script>
  Vue.component('Child', {
    template: '<div>child</div>'
  })
  var vm = new Vue({
    el: '#app',
    methods:{
      handleClick:function () {
        alert("click");
      }
    }
  })
</script>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
Javascript条件判断使用小技巧总结
Sep 08 Javascript
IE6图片加载的一个BUG解决方法
Jul 13 Javascript
html+javascript实现可拖动可提交的弹出层对话框效果
Aug 05 Javascript
javascript定时器完整实例
Feb 10 Javascript
javascript实现密码强度显示
Mar 18 Javascript
一张Web前端的思维导图分享
Jul 03 Javascript
JS 拼凑字符串的简单实例
Sep 02 Javascript
使用微信小程序开发前端【快速入门】
Dec 05 Javascript
jQuery滚动插件scrollable.js用法分析
May 25 jQuery
layer.open组件获取弹出层页面变量、函数的实例
Sep 25 Javascript
vue-router 中 meta的用法详解
Nov 01 Javascript
element中table高度自适应的实现
Oct 21 Javascript
ElementUI Tree 树形控件的使用并给节点添加图标
Feb 27 #Javascript
ElementUI中el-tree节点的操作的实现
Feb 27 #Javascript
element el-tree组件的动态加载、新增、更新节点的实现
Feb 27 #Javascript
element-ui table行点击获取行索引(index)并利用索引更换行顺序
Feb 27 #Javascript
微信小程序录音实现功能并上传(使用node解析接收)
Feb 26 #Javascript
BootStrap前端框架使用方法详解
Feb 26 #Javascript
原生javascript制作贪吃蛇小游戏的方法分析
Feb 26 #Javascript
You might like
PHP中通过语义URL防止网站被攻击的方法分享
2011/09/08 PHP
Session保存到数据库的php类分享
2011/10/24 PHP
比file_get_contents稳定的curl_get_contents分享
2012/01/11 PHP
PHP调用VC编写的COM组件实例
2014/03/29 PHP
php将图片保存为不同尺寸图片的图片类实例
2015/03/30 PHP
图片按比例缩放函数
2006/06/26 Javascript
[原创]静态页面也可以实现预览 列表不同的显示方式
2006/10/14 Javascript
jquery $.ajax入门应用一
2008/11/19 Javascript
jquery 事件冒泡的介绍以及如何阻止事件冒泡
2012/12/25 Javascript
js输出阴历、阳历、年份、月份、周示例代码
2014/01/29 Javascript
jquery移除、绑定、触发元素事件使用示例详解
2014/04/10 Javascript
JS判断移动端访问设备并加载对应CSS样式
2014/06/13 Javascript
NodeJS测试框架mocha入门教程
2017/03/28 NodeJs
JS中定位 position 的使用实例代码
2017/08/06 Javascript
JS简单实现查看文档创建日期、修改日期和文档大小的方法示例
2018/04/08 Javascript
vue+mousemove实现鼠标拖动功能(拖动过快失效问题解决方法)
2018/08/24 Javascript
nodejs高大上的部署方式(PM2)
2018/09/11 NodeJs
Python在图片中添加文字的两种方法
2017/04/29 Python
pycharm 实现显示project 选项卡的方法
2019/01/17 Python
python Elasticsearch索引建立和数据的上传详解
2019/08/04 Python
Python实现某论坛自动签到功能
2019/08/20 Python
Python基于staticmethod装饰器标示静态方法
2020/10/17 Python
Django xadmin安装及使用详解
2020/10/26 Python
html5 button autofocus 属性介绍及应用
2013/01/04 HTML / CSS
mui几种页面跳转方式对比总结概括
2017/08/18 HTML / CSS
Html5 APP中监听返回事件处理的方法示例
2018/03/15 HTML / CSS
美国中西部家用医疗设备商店:Med Mart(轮椅、踏板车、升降机等)
2019/04/26 全球购物
Jones Bootmaker官网:优质靴子和鞋子在线
2020/11/30 全球购物
商务专员岗位职责范本
2014/06/29 职场文书
幼儿园小班见习报告
2014/10/31 职场文书
2015年企业新年寄语
2014/12/08 职场文书
西安大雁塔导游词
2015/02/10 职场文书
班级联欢会主持词
2015/07/03 职场文书
七一慰问简报
2015/07/20 职场文书
2016年第二十五次全国助残日活动总结
2016/04/01 职场文书
python 如何将两个实数矩阵合并为一个复数矩阵
2021/05/19 Python