广告
返回顶部
首页 > 资讯 > 精选 >vue自定义组件怎么添加使用原生事件
  • 651
分享到

vue自定义组件怎么添加使用原生事件

2023-06-30 07:06:27 651人浏览 八月长安
摘要

今天小编给大家分享一下Vue自定义组件怎么添加使用原生事件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。自定义组件如何添加使

今天小编给大家分享一下Vue自定义组件怎么添加使用原生事件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

    自定义组件如何添加使用原生事件

    自定义组件(Components)是vue的重要知识块之一,使用中不少人会发现一个问题:为什么我在组件里绑定click事件不起作用?这里先看看原因吧。

    在自定义组件中直接绑定原生事件vue可是"不待见"的,它会认为你没有定义这个事件,所以没有任何反应。

    哪些是原生事件?

    例如click单击、mouseover鼠标移入、mouseout鼠标移出、keyup键盘按下抬起、keydown键盘按下…等等一系列由官方提供的事件都是原生事件。那么咋办?

    . $emit()传递

    <body>   <div id="app">       <jsxj :jsxj="message" @click="JsxjChange"></Jsxj>   </div></body>
    <script>   var vm = new Vue({       el:"#app",       data:{           message:"Hello World"       },       components:{           Jsxj:{               props:['jsxj'],               template:`<p @click="pChange">{{jsxj}}</p>`,               methods: {                   pChange(){                       this.$emit("click")                   }               },           }       },       methods: {           JsxjChange(){               this.message="Hi, Jsxj"           }       },   })</script>

    第一种方法是通过$emit()传递事件。如代码:我们在自定义组件Jsxj中设置模板,在模板中<p>原生元素上触发原生click事件,调用函数pChange(),函数用$emit()向上传递自定义事件click,父组件Jsxj接收到这个事件,于是便可以正常触发click。

    . native属性

    <body>   <div id="app">       <Jsxj :jsxj="message" @click.native="JsxjChange"></Jsxj>   </div></body>
    <script>   var vm = new Vue({       el:"#app",       data:{           message:"Hello World"       },       components:{           Jsxj:{               props:['jsxj'],               template:`<p>{{jsxj}}</p>`             }       },       methods: {           JsxjChange(){               this.message="Hi, Jsxj"           }       },   })</script>

    第二种方法相对简单。

    代码大同小异,不过我们不再用$emit()从子向父传递自定义事件,太麻烦了,而是用native属性帮忙@click.native="JsxjChange",这样组件就会知道这是原生事件click,调用相应的函数。 

    vue使用原生事件

    项目中用到element ui 这个ui框架,有些组件没有封装的事件,例如click事件 ,我在使用时感觉不起作用,后来查看vue官方文档,发现有些原生事件是不提供,还有我们自定义的组件也是不能直接使用click事件的 ,需要在click事件后写上.native才能生效

    即 例如:

    <el-card @click.native = "enter"></el-card>

    以上就是“vue自定义组件怎么添加使用原生事件”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网精选频道。

    --结束END--

    本文标题: vue自定义组件怎么添加使用原生事件

    本文链接: https://www.lsjlt.com/news/327703.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • vue自定义组件怎么添加使用原生事件
      今天小编给大家分享一下vue自定义组件怎么添加使用原生事件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。自定义组件如何添加使...
      99+
      2023-06-30
    • vue自定义组件如何添加使用原生事件
      目录自定义组件如何添加使用原生事件. $emit()传递. native属性vue使用原生事件自定义组件如何添加使用原生事件 自定义组件(Components)是vue的重要知识块之...
      99+
      2022-11-13
    • C#怎么为控件添加自定义事件及自定义触发
      本文小编为大家详细介绍“C#怎么为控件添加自定义事件及自定义触发”,内容详细,步骤清晰,细节处理妥当,希望这篇“C#怎么为控件添加自定义事件及自定义触发”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。先随便搞个事件...
      99+
      2023-06-30
    • Vue组件的自定义事件和全局事件总线怎么使用
      这篇“Vue组件的自定义事件和全局事件总线怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue组件的自定义事件和全局...
      99+
      2023-07-05
    • vue怎么给自定义的组件绑定点击事件
      这篇文章主要介绍“vue怎么给自定义的组件绑定点击事件”,在日常操作中,相信很多人在vue怎么给自定义的组件绑定点击事件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue怎么给自定义的组件绑定点击事件”的疑...
      99+
      2023-06-30
    • Vue怎么实现自定义组件自动生成
      本文小编为大家详细介绍“Vue怎么实现自定义组件自动生成”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue怎么实现自定义组件自动生成”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。就目前三大前端主流数据驱动框架...
      99+
      2023-07-04
    • Vue组件中的自定义事件是什么
      小编给大家分享一下Vue组件中的自定义事件是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!主要介绍组件的自定义事件的概念,使用等。何为组件自定义事件:组件自定...
      99+
      2023-06-29
    • Vue中怎么自定义事件
      本篇文章给大家分享的是有关Vue中怎么自定义事件,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。事件绑定每个 Vue 实例都实现了事件接口 (E...
      99+
      2022-10-19
    • 微信小程序怎么使用自定义组件封装原生image组件
      本文小编为大家详细介绍“微信小程序怎么使用自定义组件封装原生image组件 ”,内容详细,步骤清晰,细节处理妥当,希望这篇“微信小程序怎么使用自定义组件封装原生image组件 ”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习...
      99+
      2023-06-26
    • vue怎么自定义keepalive组件
      本文小编为大家详细介绍“vue怎么自定义keepalive组件”,内容详细,步骤清晰,细节处理妥当,希望这篇“vue怎么自定义keepalive组件”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。为什么会出现这种情...
      99+
      2023-07-02
    • Vue结合原生js如何实现自定义组件自动生成
      这篇文章主要介绍Vue结合原生js如何实现自定义组件自动生成,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!就目前三大前端主流数据驱动框架(vue,ng,react)而言,均具有创建自...
      99+
      2022-10-19
    • vue怎么自定义事件传参
      这篇“vue怎么自定义事件传参”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue怎么自定义事件传参”文章吧。自定义事件传参...
      99+
      2023-06-30
    • vue怎么自定义和使用开关组件
      这篇“vue怎么自定义和使用开关组件”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“vue怎么自定义和使用开关组件”文章吧。s...
      99+
      2023-06-29
    • 怎么实现Vue 自定义组件中hover事件以及 v-model
      这期内容当中小编将会给大家带来有关怎么实现Vue 自定义组件中hover事件以及 v-model,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在CSS中,很容易在鼠标ho...
      99+
      2022-10-19
    • vue子组件中怎么通过自定义事件向父组件传递数据
      这篇文章将为大家详细讲解有关vue子组件中怎么通过自定义事件向父组件传递数据,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。使用v-on绑定自定义事件可以让子...
      99+
      2022-10-19
    • Vue自定义组件使用事件修饰符的踩坑记录
      前言 今天在使用自写组件时,突然遇到久违的冒泡事件,就想着使用Vue自带的事件修饰符(.stop),本以为可以就此解决冒泡,却遇到这个问题。 脑中一片问号????这是什么鬼,我是...
      99+
      2022-11-12
    • vue中怎么自定义全局组件
      这期内容当中小编将会给大家带来有关vue中怎么自定义全局组件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Vue.use( plugin ):安装 Vue.js 插件。如...
      99+
      2022-10-19
    • Vue中怎么自定义动态组件
      Vue中怎么自定义动态组件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。举第一个栗子用vue-cli搭建好项目目录之后,在src/compon...
      99+
      2022-10-19
    • vue怎么自定义封装API组件
      这篇文章主要介绍vue怎么自定义封装API组件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!自定义封装API组件1.创建vue组件<template>    <...
      99+
      2023-06-29
    • Vue中怎么使用addEventListener添加事件和removeEventListener移除事件
      今天小编给大家分享一下Vue中怎么使用addEventListener添加事件和removeEventListener移除事件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读...
      99+
      2023-07-04
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作