Vue-03

Vue指令

  • v-bind
    作用:动态设置html的标签属性(src url title…)
    语法:v-bind:属性名="表达式"
    举例代码如下:
    1a
    实现效果如下:
    1b

  • 案例:图片切换
    实现代码如下:
    2a

    实现的效果如下图所示,在第一张照片上。index = 0,所以没有上一页这个按钮。

    2b

    点击下一页,显示下一张图,效果如图所示:

    2c

    在最后一张图,index = list.length - 1,因此没有下一页这个按钮:

    2d

  • v-for
    作用:基于数据循环,多次渲染整个元素。 (数组、对象、数组…)
    遍历数组语法:v-for="(item, index) in 数组"
    item 每一项,index 下标。
    使用代码如下:
    3a
    效果如下:
    3b

  • 图书管理案例 - 书架
    需求:

    1. 基本渲染 → v-for
    2. 删除功能


    使用v-for进行基本渲染后,效果如图,其中 item 代表的是 bookList 中的每一行:

    3c

    对于此,做了如下改进,将作者和姓名列出,效果如下:

    3d

    接下来,开始实现删除功能(数据驱动),本质上就是要删除数组里面的对应项,实现此功能有两种思路,一个是根据 index 删除,另一个是根据 id 删除。
    这两种方式优先使用后者(有 id 优先使用 id )
    以下代码可以实现删除功能:

    3e

    上述代码还有一点小瑕疵,为进一步完善,在 v-for 中加入了key
    语法:key属性 = "唯一标识"

    下面展示加 key 与不加 key 的区别,为此讲 li 标签的 background属性设为pink,得到的样式如下:
    4a

    在没有 key 的时候,点击删除红楼梦这一项之后,可以发现刚才的 li 还在(背景仍为粉色),只是里面的文字内容改变了:
    4b
    而加入 key 之后,key 的作用在于:给元素添加的唯一标识,便于 Vue 进行列表项的正确排序复用。
    加入 key 后点击删除的效果如图:

    <li v-for="(item, index) in bookList" :key="item.id">
    

4c

注意点:

  1. key 的值只能是字符串或数字类型
  2. key 的值必须具有唯一性
  3. 推荐使用id 作为 key(唯一),不推荐 index 作为 key(会变化,不对应)
  • v-model
    作用:给表单元素使用,双向数据绑定 → 可以快速获取或设置表单元素内容

    1. 数据变化 → 视图自动更新
    2. 视图变化 → 数据自动更新

    语法:v-model = '变量'
    实现代码示例如下(代码中实现了重置功能):
    5a

  • 综合案例 - 记事本
    需求:

    1. 列表渲染
    2. 删除功能
    3. 添加功能
    4. 底部统计和清空

    首先,使用以下代码实现列表渲染:
    6a
    6b
    其次,注册点击事件,实现删除功能。
    7a
    7b
    然后来实现添加功能,此功能分为两个核心步骤。

    1. 通过 v-model 绑定输入框 → 实时获取表单元素的内容
    2. 点击按钮,进行新增,往数组最前面加 unshift
      代码实现如下:
      8a
      8b
      最后,实现底部统计和清空功能,同时进一步优化,如果当前没有任务了,不要显示底部统计和清空功能。

9

10
关于记事本的完整代码如下(没有添加css样式):
11a

11b

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

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

相关文章

[RAM] DDR5 自带双通道

主页&#xff1a; 元存储博客 文章目录 前言1. 为什么DDR5要在一个dimm里面设计两个channel&#xff1f;2. 前言 DDR5 是第 5 代双倍数据速率同步动态随机存取内存&#xff0c;又称 DDR5 SDRAM。DDR5 是在 2017 年由行业标准机构 JEDEC推动的&#xff0c;DDR5 产品 问世于 202…

LSA头部结构简述

LSA&#xff08;Link State Advertisement&#xff09;是一种用于路由协议头部结构&#xff0c;用于在网络中传递路由信息。 LSA头部结构包含以下几个字段&#xff1a; 1、LSA类型&#xff08;LSA Type&#xff09;&#xff1a;指示LSA的类型&#xff0c;不同类型的LSA用于传递…

python二级常见题目

一.常见语法 jieba—第三方中文分词函数库 jieba—第三方中文分词函数库_jieba库函数-CSDN博客 Python基础——format格式化 Python基础——format格式化_python format-CSDN博客 format()方法的使用超全_format方法-CSDN博客 Python中random函数用法整理 Python中random…

换个角度看境外支付系统:警惕金融风险之安全测试实践

【面试突击班】1. 性能测试主要关注哪些指标&#xff1f; &#xff0c;这个名词相信生活在当下社会的大家应该都不在陌生了吧&#xff0c;他时时刻刻充斥在我们的日常生活中&#xff0c;哪里有交易发生&#xff0c;哪里就有它的身影。 其实直白的来说&#xff0c;支付系统是扮…

java面试题(spring框架篇)(黑马 )

树形图&#xff1a; 一、Spring框架种的单例bean是线程安全吗&#xff1f; Service Scope("singleton") public class UserServiceImpl implements UserService{ } singleton:bean在每个Spring IOC容器中只有一个实例 protype&#xff1a;一个bean的定义可以有多个…

ES系列之Logstash实战入门

概述 作为ELK技术栈一员&#xff0c;Logstash用于将数据采集到ES&#xff0c;通过简单配置就能把各种外部数据采集到索引中进行保存&#xff0c;可提高数据采集的效率。 原理 数据源提供的数据进入Logstash的管道后需要经过3个阶段&#xff1a; input&#xff1a;负责抽取数…

游戏框架搭建

使用框架的目标&#xff1a;低耦合&#xff0c;高内聚&#xff0c;表现和数据分离 耦合&#xff1a;对象&#xff0c;类的双向引用&#xff0c;循环引用 内聚&#xff1a;相同类型的代码放在一起 表现和数据分离&#xff1a;需要共享的数据放在Model里 对象之间的交互一般有三…

RH850P1X芯片学习笔记-Generic Timer Module -ATOM

文章目录 ARU-connected Timer Output Module (ATOM)OverviewGLOBAL CHANNEL CONTROL BLOCK ATOM Channel architectureATOM Channel modesSOMP-Signal Output Mode PWMSOMP - ARUSOMC-Signal Output Mode CompareSOMC - ARUSOMC – COMPARE COMMANDSOMC – OUTPUT ACTIONATOM …

计算机设计大赛 深度学习实现行人重识别 - python opencv yolo Reid

文章目录 0 前言1 课题背景2 效果展示3 行人检测4 行人重识别5 其他工具6 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; **基于深度学习的行人重识别算法研究与实现 ** 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c…

YOLOv5-Openvino和ONNXRuntime推理【CPU】

1 环境&#xff1a; CPU&#xff1a;i5-12500 Python&#xff1a;3.8.18 2 安装Openvino和ONNXRuntime 2.1 Openvino简介 Openvino是由Intel开发的专门用于优化和部署人工智能推理的半开源的工具包&#xff0c;主要用于对深度推理做优化。 Openvino内部集成了Opencv、Tens…

接口自动化测试实战经验分享,测试用例也能自动生成

作为测试&#xff0c;你可能会对以下场景感到似曾相识&#xff1a;开发改好的 BUG 反复横跳&#xff1b;版本兼容逻辑多&#xff0c;修复一个 BUG 触发了更多 BUG&#xff1b;上线时系统监控毫无异常&#xff0c;过段时间用户投诉某个页面无数据&#xff1b;改动祖传代码时如履…

靶机渗透之ConnectTheDots

对于vulnhub中的靶机&#xff0c;我们都需先下载镜像&#xff0c;然后导入VM&#xff0c;并将网络连接改为NAT模式。首先我们再来看一下靶机渗透的步骤&#xff1a;信息收集-漏洞分析-漏洞利用-提权。基本都是这个三个步骤&#xff0c;接下来开始我们今天的靶机渗透吧&#xff…

Go字符串实战操作大全!

目录 1. 引言文章结构概览 2. Go字符串基础字符串的定义与特性什么是字符串&#xff1f;Go字符串的不可变性原则 字符串的数据结构Go字符串的内部表达byte和rune的简介 3. 字符串操作与应用3.1 操作与应用字符串连接字符串切片字符串查找字符串比较字符串的替换字符串的大小写转…

计算机专业必看的十部电影

计算机专业必看的十部电影 1. 人工智能2. 黑客帝国3. 盗梦空间4. 社交网络5. Her6. 模仿游戏7. 斯诺登8. 头号玩家9. 暗网10. 网络迷踪 计算机专业必看的十部电影&#xff0c;就像一场精彩盛宴&#xff01; 《黑客帝国》让你穿越虚拟世界&#xff0c;感受高科技的魅力《模仿游戏…

(k8s中)docker netty OOM问题记录

1、首先查看docker的内存占用情况&#xff1a; docker top 容器名 -u 查看内存cpu占用率&#xff08;容器名来自kubectl describe pod xxx或者docker ps&#xff09; 可以看出内存一直增长&#xff0c;作为IO代理这是不正常的。 2、修改启动参数和配置文件 需要注意的是为了…

30天JS挑战(第十五天)------本地存储菜谱

第十五天挑战(本地存储菜谱) 地址&#xff1a;https://javascript30.com/ 所有内容均上传至gitee&#xff0c;答案不唯一&#xff0c;仅代表本人思路 中文详解&#xff1a;https://github.com/soyaine/JavaScript30 该详解是Soyaine及其团队整理编撰的&#xff0c;是对源代…

Java---文件,流✨❤️

文章目录 1.遍历文件夹2.遍历子文件夹3.练习流4.以字节流的形式读取文件内容5.以字节流的形式向文件写入数据顶折纠问6 .写入数据到文件 1.遍历文件夹 一般说来操作系统都会安装在C盘&#xff0c;所以会有一个 C:\WINDOWS目录。 遍历这个目录下所有的文件(不用遍历子目录) 找出…

【数仓】Hadoop软件安装及使用(集群配置)

一、环境准备 1、准备3台虚拟机 Hadoop131&#xff1a;192.168.56.131Hadoop132&#xff1a;192.168.56.132Hadoop133&#xff1a;192.168.56.133 本例系统版本 CentOS-7.8&#xff0c;已安装jdk1.8 2、hosts配置&#xff0c;关闭防火墙 vi /etc/hosts添加如下内容&#x…

#WEB前端(浮动与定位)

1.实验&#xff1a; 2.IDE&#xff1a;VSCODE 3.记录&#xff1a; float、position 没有应用浮动前 应用左浮动和右浮动后 应用定位 4.代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><me…

AIGC下一步:如何用AI再度重构或优化媒体处理?

让媒资中“沉默的大多数”再次焕发光彩。 邹娟&#xff5c;演讲者 编者按 AIGC时代下&#xff0c;媒体内容生产领域随着AI的出现也涌现出更多的变化与挑战。面对AI的巨大冲击&#xff0c;如何优化或重构媒体内容生产技术架构&#xff1f;在多样的应用场景中媒体内容生产技术又…