首页 > 其他分享 >vue3学习基础之事件绑定

vue3学习基础之事件绑定

时间:2023-12-26 15:22:44浏览次数:31  
标签:function count console log 绑定 学习 点击 事件 vue3

事件绑定

<script setup>
import { nextTick, ref } from "vue";

function clickA() {
  console.log("点击了a标签,点击事件传递到了外层p标签");
}
function clickStop() {
  console.log("点击了a标签,点击事件停止向外层传递");
}
function clickOnce() {
  console.log("只能点击1次");
}
function clickSelf() {
  console.log("点击了外层p标签");
}
function clickOuter() {
  console.log("点击事件传递到了外层p标签或者点击了p标签");
}
function clickCapture() {
  console.log("捕获模式,事件先被外层捕获");
}
function onSubmit() {
  console.log("提交数据");
}

const count = ref(5);

function increment() {
  count.value += 1;
}
async function increment_nextTick() {
  count.value += 1;
  count.value += 1;
  count.value += 1;
  await nextTick();
}

let url = "https://www.baidu.com/";
</script>
<template>
  <div>
    <!-- 事件修饰符 -->
    <div>
      <p @click="clickOuter">
        <button @click.stop="clickStop">单击事件将停止传递</button>
        <button @click.once="clickOnce">点击事件最多被触发一次</button>
        <a @click.stop.prevent :href="url">修饰语可以使用链式书写</a>
      </p>
      <p @click.self="clickSelf">
        <button @click="clickA">仅当 event.target 是元素本身时才会触发事件处理器,例如:事件处理器不来自子元素</button>
      </p>
      <p @click.capture="clickCapture">
        <button @click="clickA">
          添加事件监听器时,使用 `capture` 捕获模式,例如:指向内部元素的事件,在被内部元素处理前,先被外部处理
        </button>
      </p>
      <form @submit.prevent="onSubmit">
        提交事件将不再重新加载页面
        <button type="submit">submit</button>
      </form>
    </div>

    <div>
      <p>
        COUNT: {{ count }}
        <button @click="increment">+1</button>
        <button @click="increment_nextTick">+3</button>
      </p>
    </div>
  </div>
</template>
<style scoped>
p {
  border: 1px solid red;
  padding: 0.5rem 1rem;
}
button,
a {
  border: 1px solid blue;
  margin-left: 1rem;
}
</style>

 

标签:function,count,console,log,绑定,学习,点击,事件,vue3
From: https://www.cnblogs.com/caroline2016/p/17928207.html

相关文章

  • vue3学习基础之表单相关
    表单相关<scriptsetup>import{ref}from"vue";constmessage=ref("hello");constchecked=ref();constcheckedNames=ref([]);constpicked=ref();constselected=ref();constmulSelected=ref([]);constnum=ref(5);......
  • vue3学习基础之vue-router
    我的vue3学习之路总是学学停停,最开始在18年开发微信小程序,就发现小程序和vue的语法有些相似,然后就去看了vue2的文档,随后忙其它的事情就丢下了。直到22年又开始捡起来vue3,有了组合式api,语法简明很多,然后又不知道忙什么丢下。。。前段有些空时间,就把vue3的学习整理下,使用vite构建......
  • MySql的information_schema.processlist库学习之"如何检测出大数据sql查询"
    1.如何通过MySql检测出大数据sql查询一般数据库都会存在:information_schema数据库 检测出大数据sql查询[time时间越长说明,数据量越大,要根据公司的限度来衡量,我的思路是500以上都要查看是否是大数据的范畴]2.案例--检测出大数据sql查询[time时间越长说明,数据量越大,要根据......
  • 【源码系列#04】Vue3侦听器原理(Watch)
    专栏分享:vue2源码专栏,vue3源码专栏,vuerouter源码专栏,玩具项目专栏,硬核......
  • uniGUI学习之表格和链接(76)
    Delphi10.3如何在StringGrid某单元格下划线显示,并点击弹出新窗口拖一个UniHTMLFrame1到界面上<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"/><title>网页标题</title><basetarget=&qu......
  • uniGUI学习之禁用缓存(75)
    引用了第三方js,css等文件,但是因为缓存的原因,修改后没有及时生效。方法一:在ServerModule的OnHTTPCommand事件中,加入以下代码AResponseInfo.CacheControl:='max-age=0,no-cache,no-store,must-revalidate,proxy-revalidate';但是此方法有缺点,只支持exe模式,exe模式下所有的请求......
  • uniGUI学习之自定义Hint(74)
    默认Hint样式 procedureTMainForm.UniFormShow(Sender:TObject);vari:Integer;beginfori:=0toSelf.ControlCount-1dobeginwithTUniFormControl(Self.Controls[i])dobeginifHint<>''thenbeginShowHint......
  • stm32学习总结:4、Proteus8+STM32CubeMX+MDK仿真串口收发
    stm32学习总结:4、Proteus8+STM32CubeMX+MDK仿真串口收发文章目录stm32学习总结:4、Proteus8+STM32CubeMX+MDK仿真串口收发一、前言二、资料收集三、STM32CubeMX配置串口1、配置开启USART12、设置usart中断优先级3、配置外设独立生成.c和.h四、MDK串口收发代码(中断回调接收后发送接......
  • 自主智能体与增强学习:实现人工智能的关键
    1.背景介绍人工智能(ArtificialIntelligence,AI)是一门研究如何让计算机模拟人类智能行为的科学。自从1950年代以来,人工智能一直是计算机科学的一个热门研究领域。人工智能的目标是让计算机能够理解自然语言、进行逻辑推理、学习自主行动、感知环境、进行情感交互等。自主智能体(Aut......
  • VUE3 + Three.js 坑
    VUE3+Three.js坑1.问题描述将scene、camera、renderer、controls等变量用reactive变成响应式时,页面渲染会报错:three.module.js?5a89:24471UncaughtTypeError:'get'onproxy:property'modelViewMatrix'isaread-onlyandnon-configurabledatapropertyonthe......