【Vue3入门1】02- vue3的基本操作(上)

本文介绍vue3中的一些方法的操作。

目录

1. 绑定事件 v-on

2. 按键修饰符

3. 显示和隐藏 v-show

4. 条件渲染 v-if

5. 条件渲染if-else


1. 绑定事件 v-on

点击事件 v-on:click=" 发生事件 "

<body><div id="app">{{ msg }}     <h2>{{ web.url }}</h2><h2>{{ web.user }}</h2><!-- 3.v-on 为button按钮绑定点击事件 --><!-- 4.当点击页面的按钮时,原网址就会进行修改并显示在页面上 --><button v-on:click="eidt">修改</button><br><!-- 5.v-on:的简写为 @ --><button @click="eidt">修改简写版</button></div><script type="module">// 以模块化开发为例import { createApp,reactive } from './vue.esm-browser.js'createApp({setup(){// 设置响应的数据和方法const web = reactive({url:'baidu.com',user: 0})// 1.定义一个web的方法来修改网站的网址const eidt = () => {web.url = 'www.baidu.com';}return {msg:'success',  // 响应成功web,  // 响应式数据// 2.方法添加至return语句来返回eidt}}}).mount("#app")  // 将其挂载到 div#app 元素中</script>
</body>

2. 按键修饰符

以按键 enter 为例

按下按键时 user 自动添加响应数量

<body><div id="app">{{ msg }}     <h2>{{ web.url }}</h2><h2>{{ web.user }}</h2><button v-on:click="eidt">修改</button><br><button @click="eidt">修改简写版</button><hr><!-- 3.给add方法设置一个事件 当按下enter键并松开(keyup)时 调用add方法 通过return返回结果 --><input type="text" @keyup.enter = "add(40,60)"><!-- 4.按下文本框时 有焦点 有光标闪烁,此时再按下enter并松开才有效,不点击文本框无效 --></div><script type="module">// 以模块化开发为例import { createApp,reactive } from './vue.esm-browser.js'createApp({setup(){// 设置响应的数据和方法const web = reactive({url:'baidu.com',user: 0})// 1.设置一个add方法,来计算a,b两个网站新增的用户数const add = (a,b) => {web.user = a+b;}const eidt = () => {web.url = 'www.baidu.com';}return {msg:'success',  // 响应成功web,  // 响应式数据eidt,// 2.返回add方法add}}}).mount("#app")  // 将其挂载到 div#app 元素中</script>
</body>

此时按下按键enter,页面显示100,但是反复点击并松开enter一直是100不变

怎么样才能每松开一次enter就+100

可以直接在add方法中设置,每按一次在原先基础上 +100

const add = (a,b) => {web.user += a+b;
}

除了回车外,还可以设置其他 比如:空格、Tab键、任意键、组合键

空格: <input type="text" @keyup.space="add(20, 30)"> <br>

Tab: <input type="text" @keydown.tab="add(10, 20)"> <br> 

keydown原因:按下Tab后,光标会下移而不在本文本框内

任意键w: <input type="text" @keyup.w="add(5, 10)"> <br>

组合键:@keyup.X.Y=" 事件 "

Ctrl + Enter <input type="text" @keyup.ctrl.enter="add(40, 60)"> <br>

Ctrl + A <input type="text" @keyup.ctrl.a="add(20, 30)">


3. 显示和隐藏 v-show

<body><div id="app"><!-- 当前显示状态是true / false --><h3>{{ web.show }}</h3> <!-- 当前显示状态 --><!-- 6.标签p设置了v-show 来控制一段文字的显示状态 --><!-- 7.web.show代表布尔值 决定是否显示  --><p v-show="web.show">baidu.com</p><!-- 4.设置一个button来切换show,每次点击按钮后调用toggle方法 并将结果通过return返回给标签p --><!-- 5.可以打开控制台观察,点击按钮后给p标签添加了一个CSS属性 style="display:none;" 且同时web.show修改为flase --><button @click="toggle">点击切换显示状态</button></div><script type="module">// 模块化开发为例import { createApp, reactive } from './vue.esm-browser.js'createApp({setup() {// 定义一个reactive类型的响应数据const web = reactive({show: true  // 布尔类型的show 初始为true})// 1.定义一个可以切换show状态的方法 toggleconst toggle = () => {web.show = !web.show  // 2.将!show赋值给show 实现每次点击按钮都是之前状态的反状态}return {web,toggle   // 3.返回toggle方法}}}).mount("#app")</script>
</body>

4. 条件渲染 v-if

<body><div id="app"><!-- 当前显示状态是true / false --><h3>{{ web.show }}</h3> <p v-show="web.show">baidu.com</p><!-- 1.新增一个p标签 并添加 v-if--><!-- v-if是渲染条件,条件为true时渲染 false时不渲染 --><!-- 虽然v-if也可以切换显示状态 但是不适合频繁切换 --><!-- 可以F12发现,每次切换状态,会在DOM中添加或删除元素 --><p v-if="web.show">www.baidu.com</p><button @click="toggle">点击切换显示状态</button></div><script type="module">// 模块化开发为例import { createApp, reactive } from './vue.esm-browser.js'createApp({setup() {// 定义一个reactive类型的响应数据const web = reactive({show: true  // 布尔类型的show 初始为true})// 可以切换show状态的方法 toggleconst toggle = () => {web.show = !web.show  // 将!show赋值给show 实现每次点击按钮都是之前状态的反状态}return {web,toggle}}}).mount("#app")</script>
</body>

5. 条件渲染if-else

其实就是各种条件判断来实现显示不同状态

<body><div id="app"><!-- 当前显示状态是true / false --><h3>{{ web.show }}</h3> <p v-show="web.show">baidu.com</p><p v-if="web.show">www.baidu.com</p><button @click="toggle">点击切换显示状态</button><!-- 下面是 if else 的应用 --><!-- 2.在页面定义一个新标签:新网站,并为其添加 v-if --><p v-if="web.user < 1000">新网站</p><!-- 当用户数小于1000时显示新网站 --><!-- 3.再定义一个新网站:优秀网站,条件为用户 [1000,10000) --><p v-else-if="web.user >= 1000 && web.user < 10000">优秀网站</p><!-- 4.资深网站标签,条件为除了上述所有条件的其他条件 --><p v-else=></p></div><script type="module">// 模块化开发为例import { createApp, reactive } from './vue.esm-browser.js'createApp({setup() {// 定义一个reactive类型的响应数据const web = reactive({show: true,  // 布尔类型的show 初始为true// 1.响应式数据添加一个元素 用户useruser: 500  // 初始为500})// 可以切换show状态的方法 toggleconst toggle = () => {web.show = !web.show  // 将!show赋值给show 实现每次点击按钮都是之前状态的反状态}return {web,toggle}}}).mount("#app")</script>
</body>

本文介绍vue3中的一些方法的操作。

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

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

相关文章

免费Typora1.8.6安装教程

&#x1f31f; Typora - 极简主义的 Markdown 编辑器免费指南 &#x1f31f; &#x1f4cc; 什么是 Typora&#xff1f; Typora 是一款广受好评的 **所见即所得** 的 Markdown 编辑器&#xff0c;以极致简洁的界面和流畅的写作体验闻名。它让 Markdown 写作变得像使用 Word 一…

元音辅音及其字母组合发音

文章目录 单元音长元音/ɑː//ɔ://u://i://ɜː/// 短元音/ʌ//ɒ//ʊ//ɪ//ə//e/ 双元音/eɪ//aɪ//ɔɪ//ɪə//eə//ʊə//əʊ//aʊ/ 辅音3个鼻辅音m n ŋ 5个独立浊辅音w j r l h 20个清浊相对的辅音s zʃ ʒf vθ p bt dk gts dztʃ dʒtr dr 以下是列举的部分字母组合…

基于FPGA频率、幅度、相位可调的任意函数发生器(DDS)实现

基于FPGA实现频率、幅度、相位可调的DDS 1 摘要 直接数字合成器( DDS ) 是一种通过生成数字形式的时变信号并进行数模转换来产生模拟波形(通常为正弦波)的方法,它通过数字方式直接合成信号,而不是通过模拟信号生成技术。DDS主要被应用于信号生成、通信系统中的本振、函…

C++调用ffmpeg解复用、解码案例

框架 一个封装文件&#xff08;mp4&#xff09;如何播放&#xff1f;大体流程如下&#xff1a; 案例 本案例实现在windows环境下&#xff0c;调用ffmpeg4.4.5动态库实现上述从解封装、视频解码、音频解码的全部过程&#xff0c;案例测试通过。由于ffmpeg接口功能网上资料较多&a…

Linux(进程)

一.冯诺依曼体系结构 输入设备&#xff1a;键盘&#xff0c;鼠标&#xff0c;话筒&#xff0c;摄像头...网卡&#xff0c;磁盘 输出设备&#xff1a;显示器&#xff0c;磁盘&#xff0c;网卡&#xff0c;打印机 外设&#xff1a;输入设备输出设备 cpu&#xff08;中央处理器&am…

[极客大挑战 2019]BabySQL—3.20BUUCTF练习day4(3)

[极客大挑战 2019]BabySQL-3.20BUUCTF练习day4(3) 做题过程 打开是以下页面&#xff08;前几天有它的第一版和第二版出现&#xff09;输入1’ 回显以下内容&#xff08;还是字符型以单引号闭合&#xff0c;因为有报错信息回显&#xff09; 输入1 order by 4%23回显成这个 被过…

[Effective C++]条款20:宁以 pass-by-reference-to-const替换 pass-by-value

. 在C中&#xff0c;函数参数与返回值的数据传递的方式&#xff0c;对程序的性能和正确性有着重要影响。C默认使用pass-by-value&#xff08;传值&#xff09;的方式传递参数。但这种方式在某些情况下会导致性能问题和对象切割问题。 C推荐使用pass-by-reference-to-const&…

文字变央视级语音转换工具

大家在制作短视频、广告宣传、有声读物、自媒体配音、学习辅助等场景的时候&#xff0c;经常会需要用到配音来增强视频的表现力和吸引力。然而&#xff0c;市面上的一些配音软件往往需要收费&#xff0c;这对于很多初学者或者预算有限的朋友来说&#xff0c;无疑增加了一定的负…

邂逅书香:在诗韵与青春中找寻心灵归处

在信息如洪流般奔涌的当下&#xff0c;我们的灵魂时常在喧嚣中漂泊&#xff0c;渴望一处宁静港湾。而书籍&#xff0c;一直以来都是人类最忠诚的精神伴侣。今天&#xff0c;要为诗歌爱好者和青春文学迷们带来两份特别的礼物——《韵之队诗集》与《青春与爱共舞》&#xff0c;它…

国科大——计网(0812)——实验作业

**前沿&#xff1a;**此博客记录了24—25年度秋季学期计算机网络&#xff08;0812&#xff09;课程的实验作业&#xff0c;所提供的材料仅供参考。 0 实验题目 本次实验总共提供了四个可选的题目&#xff0c;即BGP分析实验&#xff0c;BGP 前缀劫持攻击及检测实验&#xff0c…

新能源汽车高压液体加热器总成技术解析及未来发展趋势

引言 新能源汽车的快速发展对热管理系统提出了更高要求&#xff0c;高压液体加热器作为核心组件&#xff0c;直接影响车辆低温性能、电池寿命及用户体验。本文以实际产品为例&#xff0c;结合行业数据与技术趋势&#xff0c;深度解析高压液体加热器的技术原理、市场现状及未来…

蓝桥杯 数字接龙

问题描述 小蓝最近迷上了一款名为《数字接龙》的迷宫游戏。 游戏在一个大小为 N N 的格子棋盘上展开&#xff0c;其中每一个格子处都有一个 0 到 K-1 之间的整数。 游戏规则如下&#xff1a; 从左上角 (0, 0) 出发&#xff0c;目标是到达右下角 (N-1, N-1)。 每一步可以选…

SysVinit和Systemd的系统运行级别

Linux运行级别 SysVinit系统(init守护进程)Linux系统运行级别SysVinit系统(init守护进程)查看Linux运行级别SysVinit系统(init守护进程)修改运行级别&#xff1a; Systemd守护进程Linux系统运行级别systemd查看运行级别Systemd查看系统当前运行级别 systemd修改运行级别multi-u…

SAP SD学习笔记33 - 预詑品(寄售物料),预詑品引渡(KB),预詑品出库(KE)

上一章讲了Service品目。 SAP SD学习笔记32 - Service品目(服务产品&#xff09;-CSDN博客 本章继续讲SAP SD的知识 - 预詑品(寄售物料)。 目录 1&#xff0c;预詑品概要 1-1&#xff0c;预詑品(寄售物料)的概念 1-2&#xff0c;预詑品的4种业务 1-3&#xff0c;受托品与…

DeiT:数据高效的图像Transformer及其工作原理详解

DeiT&#xff1a;数据高效的图像Transformer及其工作原理详解 随着Transformer架构在自然语言处理&#xff08;NLP&#xff09;领域的巨大成功&#xff0c;研究者们开始探索其在计算机视觉领域的应用。Vision Transformer&#xff08;ViT&#xff09;是最早将Transformer直接应…

【 <二> 丹方改良:Spring 时代的 JavaWeb】之 Spring Boot 中的异常处理:全局异常与自定义异常

<前文回顾> 点击此处查看 合集 https://blog.csdn.net/foyodesigner/category_12907601.html?fromshareblogcolumn&sharetypeblogcolumn&sharerId12907601&sharereferPC&sharesourceFoyoDesigner&sharefromfrom_link <今日更新> 一、开篇整…

【Mybatis-plus】在mybatis-plus中 if test标签如何判断 list不为空

博主介绍&#xff1a;✌全网粉丝22W&#xff0c;CSDN博客专家、Java领域优质创作者&#xff0c;掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域✌ 技术范围&#xff1a;SpringBoot、SpringCloud、Vue、SSM、HTML、Nodejs、Python、MySQL、PostgreSQL、大数据、物…

Lineageos 22.1(Android 15)制定应用强制横屏

一、前言 有时候需要系统的某个应用强制衡平显示&#xff0c;不管他是如何配置的。我们只需要简单的拿到top的Task下面的ActivityRecord&#xff0c;并判断包名来强制实现。 二、调整wms com.android.server.wm.DisplayRotation /*** Given an orientation constant, return…

HTML网页代码预览器

HTML网页代码预览器 可以用于学习和实验HTML和CSS&#xff0c;比较方便。源码参考自网络。 功能 实时预览&#xff1a;当你在左侧的“代码编辑器”中输入代码时&#xff0c;右侧的“预览窗口”会实时显示你的网页效果&#xff08;注意&#xff0c;不能体现嵌入的JavaScript运…

Arm Linux ceres库编译

由于工作需要&#xff0c;需在国产化系统上编译ceres库&#xff0c;手上有一块树莓派&#xff0c;就在树莓派上面进行测试编译ceres库&#xff0c;总体来说比较顺利。只出现了一点小问题 参考链接&#xff1a; Ceres中文教程-安装 按照上面Linux编译过程 目录 1、在线安装依赖…