继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第8天 Vue3框架

bao_
关注TA
已关注
手记 47
粉丝 9
获赞 42

课程名称:2022持续升级 Vue3 从入门到实战 掌握完整知识体系

课程章节:第2章 Vue 基础语法

主讲老师:Dell

课程内容:

今天学习的内容包括:

  • 事件绑定click

  • 绑定多个事件

  • event

  • 事件修饰符

  • @click.prevent

  • @click.stop

  • @click.self

  • @click.once

  • @scroll.passive

  • 按键修饰符

  • 鼠标修饰符

  • 多个键值绑定

  • 指定鼠标键值点击

  • 精确匹配修饰符exact

  • 编程练习

课程收获:

点击按钮,使结果自增1

<!DOCTYPE html>

<html lang="en">

<head>

  <meta charset="UTF-8">

  <meta http-equiv="X-UA-Compatible" content="IE=edge">

  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <title>事件绑定</title>

  <script src="https://unpkg.com/vue@next"></script>

</head>

<body>

  <div id="root"></div>

</body>

  <script>

    const app = Vue.createApp({

      data() {

        return {

          number: 1,

        }

      },

      methods: {

        handleBtnClick() {

          this.number += 1;

        }

      },

      template: `

        <div>{{number}}</div>

        <button @click="handleBtnClick">按钮</button>

      `

    })


    const vm = app.mount('#root');

  </script>

</html>


http://img.mukewang.com/631ec78d0001a83706280389.jpg

http://img.mukewang.com/631ec79a00012f4b05000103.jpg

在调用事件传入参数2,使结果自增2

     methods: {

        handleBtnClick(num) {

          this.number += num;

        }

      },

      template: `

        <div>{{number}}</div>

        <button @click="handleBtnClick(2)">按钮</button>

      `

http://img1.mukewang.com/631ec803000147c405790432.jpg

http://img4.mukewang.com/631ec7f20001d26a06600178.jpg

使用表达式也可以使结果自增1,但是写的内容非常有限,所以不太建议用这种方式

        <button @click="number += 1">按钮</button>

http://img2.mukewang.com/631ec87000012ad404060102.jpg

http://img2.mukewang.com/631ec8630001c13206620138.jpg


当我们点击按钮的时候会触发一个事件对象event

http://img2.mukewang.com/631ec9c40001396804930233.jpg

http://img4.mukewang.com/631ec9fe0001927b05690345.jpg

我们一般使用的是event.target事件对象

http://img3.mukewang.com/631eca3a00012ddd06360302.jpg

传参数同时获取event原生对象,要在参数写$event进行获取

http://img1.mukewang.com/631ecaa80001c99b05730270.jpg

http://img3.mukewang.com/631eca9f0001dca407600315.jpg

如果同时绑定两个时间函数.不仅仅用,隔开还要加上()

http://img2.mukewang.com/631ecb6d00013bdd07500331.jpg

http://img2.mukewang.com/631ecd4c0001908a04620188.jpg

点击冒泡

当我点击按钮的时候,会自下而上的冒泡的触发事件,需要在click后面添加click.stop进行阻止向上冒泡

          <button @click.stop="handleBtnClick">按钮</button>

http://img2.mukewang.com/631ecd970001b3b304610195.jpg

当我们事件嵌套的时候,点击外层事件会触发到内层事件,我们需要进行设置click.self,当我们只点击自己本身元素的时候才会触发,子标签元素触发是不会执行的.

http://img3.mukewang.com/631ecf210001595f05170182.jpg

http://img4.mukewang.com/631ecea00001662804760162.jpg

还要上次使用的@click.prevent阻止默认行为的修饰符

@click.capture从运营模式到捕获模式,冒泡是指从内到外,捕获是指从外到内.

@click.once指的是这个点击事件只执行一次

@scroll.passive提升滚动性能


总结  

① 传递参数的同时还需要传递事件对象则要通过$event来传递事件对象给函数接收   click(1,$event)      

② 绑定多个事件时要用逗号分隔并且带上括号才能生效   @click='click1(),click2()'  

③ 事件修饰符        

@click.stop 可以禁止事件冒泡       

@click.self   点击子元素不会触发自身事件,只有点击自身元素时才会触发       

@click.once 事件只会执行一次       

@scroll.passive 可以提升滚动性能


按键修饰符

当我们按下键盘的时候会触发

http://img.mukewang.com/631ed7cc0001ca5e05500411.jpg

http://img1.mukewang.com/631ed7f50001b01706960274.jpg

keydown.enter当我们按下enter的时候才会触发

http://img.mukewang.com/631ed84d0001a38107130297.jpg

http://img4.mukewang.com/631ed84700018dcd07640316.jpg

总结

    // 按键修饰符: enter, tab, delete, esc, up, down, left, right

    // 鼠标修饰符: left, right, middle

    // 多个键值绑定.ctrl.alt

    // 鼠标键值点击,click.left(鼠标左键),click.right(鼠标有键),click.middle(鼠标中间滚轮)

    // 精确匹配修饰符@click.ctrl.exact(按ctrl健+点击的时候才会触发)

今天学习了事件绑定等相关的指令,今天也是收获满满的一天,希望能够每天学习一点点,一直坚持下,加油!         


打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP