Vue Methods 方法的使用(VUE学习5)

一、v-on 指令用于 <div> 元素来侦听"mousemove"事件。 当"mousemove"事件发生时,会调用"mousePos"方法,并且默认使用该方法发送事件对象,这样我们就可以获得鼠标指针的位置

1.VUE页面框架

<!DOCTYPE html>
<html lang="en">
<head><title>Document</title>
</head>
<body></body>
</html>

2.设置页面标题

<title>mousePos方法</title>

3.将Vue应用程序挂载到具有id="app"的div元素上

 <div id="app">

4.显示一段提示文本,告诉用户在下面的方框上移动鼠标指针

<p>Move the mouse pointer over the box below:</p>

5.包含一个div元素,使用v-on指令监听mousemove事件,并执行mousePos方法

<div v-on:mousemove="mousePos"></div>

6.引入 Vue.js 3 的全局脚本

 <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>

7.创建 Vue 应用程序

const app = Vue.createApp({})

8.定义数据对象,包含xPos和yPos两个属性,初始值都为0

            data() {return {xPos: 0,yPos: 0}},

9.定义方法对象,包含一个名为mousePos的方法,用于处理mousemove事件

            methods: {mousePos(event) {// 将鼠标在div内的X和Y坐标保存到数据属性xPos和yPos中this.xPos = event.offsetX;this.yPos = event.offsetY;}}

10.将 Vue 应用程序挂载到页面上的 #app 元素

app.mount('#app')

11.完整代码:

<!DOCTYPE html>
<html lang="en">
<head><title>mousePos方法</title>
</head>
<body><div id="app"><p>Move the mouse pointer over the box below:</p><div v-on:mousemove="mousePos"></div></div><script src="https://unpkg.com/vue@3/dist/vue.global.js"></script><script>const app=Vue.createApp({data(){return {xPos:0,yPos:0}},methods:{mousePos(event){this.xPos=event.offsetXthis.yPos=event.offsetY}}})app.mount('#app')</script>
</body>
</html>

二、v-on 指令用于 <textarea> 标签,以侦听"input"事件,每当 textarea 元素内的文本发生更改时就会发生该事件,当"input"事件发生时,将调用"writeText"方法,并且默认使用该方法发送事件对象,以便我们可以从 <textarea> 标签获取文本。 

1.显示一个textarea标签,使用v-on指令监听input事件,并执行writeText方法,并显示一个span元素,显示用户在textarea中输入的文本

<textarea v-on:input="writeText" placeholder="Start writting.."></textarea>
<span>{{text}}</span>

2.定义数据对象,这里包含一个名为text的属性,初始值为空字符串

data() {return {text: ''}},

3.定义方法对象,包含一个名为writeText的方法,用于处理textarea的input事件,并将textarea中的文本值保存到数据属性text中

methods:{writeText(event){this.text=event.target.value}}

4.完整代码:

<!DOCTYPE html>
<html lang="en">
<head><title>v-on用于textarea标签</title>
</head>
<body><div id="app"><textarea v-on:input="writeText" placeholder="Start writting.."></textarea><span>{{text}}</span></div><script src="https://unpkg.com/vue@3/dist/vue.global.js"></script><script>const app=Vue.createApp({data(){return {text:''}},methods:{writeText(event){this.text=event.target.value}}})app.mount('#app')</script>
</body>
</html>

5.运行结果

三、记录驼鹿的目击事件

1.显示一张图片,并显示一个段落元素,显示"Moose count: "以及count的值

<img src="img_moose.jpg">
<p>{{"Moose count: " + count}}</p>

2.三个按钮,分别绑定了不同的点击事件,通过v-on指令调用addMoose方法,并传递不同的参数

<button v-on:click="addMoose(+1)">+1</button>
<button v-on:click="addMoose(+5)">+5</button>
<button v-on:click="addMoose(-1)">-1</button>

3.定义数据对象,这里包含一个名为count的属性,初始值为0

data(){return{count:0}},

4.定义方法对象,包含一个名为addMoose的方法,用于增加或减少count的值,方法接收一个参数number,根据参数的值来增加或减少count

methods:{addMoose(number){this.count+=number}}

四、想传递事件对象和另一个参数,我们可以在调用方法的地方使用一个保留名称"$event",如下所示:使用方法传递事件对象和另一个参数

1.显示一张图片,通过v-on指令监听点击事件,并调用myMethod方法,传递事件对象和文本,显示一个段落元素,通过数据绑定显示msgAndId的值

        <imgsrc="img_tiger.jpg"id="tiger"v-on:click="myMethod($event,'Hello')">

2.显示一个段落元素,通过数据绑定显示msgAndId的值

<p>{{msgAndId}}</p>

3.定义数据对象,这里包含一个名为msgAndId的属性,初始值为空格

            data(){return{msgAndId:' '}},

5.定义方法对象,包含一个名为myMethod的方法,用于处理点击事件,其中方法接收两个参数,事件对象e和文本msg,并更新数据属性msgAndId的值,拼接文本和事件目标的id

            methods:{myMethod(e,msg){this.msgAndId=msg+','this.msgAndId +=e.target.id}}

6.完整代码:

<!DOCTYPE html>
<html lang="en">
<head><title>v-on接收事件对象和文本</title>
</head>
<body><div id="app"><imgsrc="img_tiger.jpg"id="tiger"v-on:click="myMethod($event,'Hello')"><p>{{msgAndId}}</p></div><script src="https://unpkg.com/vue@3/dist/vue/global.js"></script><script>const app=Vue.createApp({data(){return{msgAndId:' '}},methods:{myMethod(e,msg){this.msgAndId=msg+','this.msgAndId +=e.target.id}}})app.mount('#app')</script>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/310890.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

格密码基础:子格,q-ary垂直格与线性代数

目录 一.写在前面 二.子空间垂直 2.1 理论解释 2.2 举例分析 三. 零空间 3.1 零空间与q-ary垂直格 3.2 零空间与行/列空间 四. 格密码相关 一.写在前面 格密码中的很多基础原语都来自于线性代数的基本概念&#xff0c;比如举几个例子&#xff1a; 格密码中的非满秩格…

【Java | 多线程案例】定时器的实现

个人主页&#xff1a;兜里有颗棉花糖 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 兜里有颗棉花糖 原创 收录于专栏【Java系列专栏】【JaveEE学习专栏】 本专栏旨在分享学习JavaEE的一点学习心得&#xff0c;欢迎大家在评论区交流讨论&#x1f48c; 这里写…

x-cmd pkg | fzf - 命令行模糊查找器

目录 简介首次用户功能特点竞品和相关作品进一步阅读 简介 fzf 是一个由 Go 编写的命令行模糊搜索工具&#xff0c;用于在大量文本数据中快速定位和选择内容&#xff0c;可以与任何列表一起使用&#xff08;e.g. 文件、命令历史记录、进程、主机名、书签、git 提交等&#xff…

linux安装python

文章目录 前言一、下载安装包二、安装1.安装依赖2.解压3.安装4.软链接5.验证 总结 前言 本篇文章介绍linux环境下安装python。 一、下载安装包 下载地址&#xff1a;官方网站 我们以最新的标准版为例 二、安装 1.安装依赖 yum -y install openssl-devel ncurses-devel li…

UG装配-接触对齐

UG装配约束命令在如下位置 首选接触&#xff1a;含接触和对齐&#xff0c;自动判断两种类型 接触&#xff1a;约束对象使其曲面法向在相反方向&#xff0c;并共面或共线 对齐&#xff1a;约束对象使其曲面法向在同一方向&#xff0c;并共面或共线 自动判断中心/轴&#xff1…

【2023 —— 我和CSDN相遇的第一年】— “技术学习和个人成长的回顾与展望”

​ ​ &#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 &#x1f38a;对2023的总结与回顾&#x1f38a; &#x1f3c5;获奖记录 &#x1f4da;学…

华为放出2023年最后一个大招!

▼最近直播超级多&#xff0c;预约保你有收获 跨年直播&#xff1a;《LLM构建生成式推荐系统及案例实战》 —1— 推出编程利器 CodeArts Snap 华为云研发大模型 CodeArts Snap 重磅推出&#xff0c;将软件工程 3.0 时代又向前推进了一步。 CodeArts Snap 是大模型智能开发辅助工…

V子型输出一串字符。。。

#include<stdio.h>int chars[100][2] {};//每行要出现的字符编码 int main() {int line;char start;char c, c1;scanf("%d %c",&line,&start);//输出多少行for (int i 0; i < line; i) {c A (start-A i)%26;c1 A (start - A 2*line-i-2) % 26…

DevOps持续交付之容器化CICD流水线

DevOps持续交付 随着DevOps⼤规模化的落地和应⽤&#xff0c;持续集成以及持续交付已经是⼀种常态的。CI指的是持续集成&#xff0c;使⽤的开源⼯具是Jenkins&#xff0c;CD指的是持续交付和持续部署&#xff0c;⼀个完整的软件开发⽣命周期为: 主要流程可以具体为: 构建阶段…

游戏服务器安全需要注意什么方面需要搭配什么防护策略

服务器主机安全需要注意什么方面,首先需要知道服务器安全威胁有哪些 服务器安全威胁是指可能导致服务器遭受攻击、数据泄露或服务中断的各种风险和威胁。以下是一些常见的服务器安全威胁&#xff1a; 1. 恶意软件和病毒&#xff1a;服务器可能感染恶意软件、病毒或蠕虫&#…

java生产设备效率管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java Web生产设备效率管理系统是一套完善的java web信息管理系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开发&#xff0c;数据库为ac…

《Spring Cloud学习笔记:微服务保护Sentinel + JMeter快速入门》

Review 解决了服务拆分之后的服务治理问题&#xff1a;Nacos解决了服务治理问题OpenFeign解决了服务之间的远程调用问题网关与前端进行交互&#xff0c;基于网关的过滤器解决了登录校验的问题 流量控制&#xff1a;避免因为突发流量而导致的服务宕机。 隔离和降级&#xff1a…