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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

072:vue+cesium 实现下雪效果

第072个 点击查看专栏目录 本示例的目的是介绍如何在vue+cesium中实现下雪效果,这里使用着色器来实现实例特效。 直接复制下面的 vue+cesium源代码,操作2分钟即可运行实现效果. 文章目录 示例效果配置方式示例源代码(共120行)着色代码实现心得:专栏目标示例效果

基于springboot+vue的健身房管理系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

JavaScript基础1之变量的var、const、let和数据类型的原始类型、对象类型、内存空间、拷贝

JavaScript基础 变量var关键字var声明的作用域var 定义多个变量变量提升 let关键字暂时性死区let不是Windows的属性 const关键字 数据类型原始类型对象类型内存空间拷贝拷贝原始类型拷贝引用数据类型比较 变量 ECMAScript变量&#xff1a;松散类型的 >变量可以保存任何类型…

EdgeX Foundry 安装部署

文章目录 一、概述1.官方文档2.Docker Compose 生成器3.创建 docker-compose 文件 二、安装准备1. 克隆服务器2.安装 Docker3.安装 docker-compose 三、非安全模式部署1.docker-comepse2.启动 EdgeX Foundry3.访问 UI3.1. consul3.2. EdgeX Console EdgeX Foundry # EdgeX Fou…

AI:144-通过机器学习预测股票市场趋势

🚀点击这里跳转到本专栏,可查阅专栏顶置最新的指南宝典~ 🎉🎊🎉 你的技术旅程将在这里启航! 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带关键代码,详细讲解供大家学习,希望…

IO 与 NIO

优质博文&#xff1a;IT-BLOG-CN 一、阻塞IO / 非阻塞NIO 阻塞IO&#xff1a;当一条线程执行read()或者write()方法时&#xff0c;这条线程会一直阻塞直到读取到了一些数据或者要写出去的数据已经全部写出&#xff0c;在这期间这条线程不能做任何其他的事情。 非阻塞NIO&…

大数据技术(一)

大数据技术概述 大数据技术层面及其功能 数据采集与预处理 利用ETL(extract-transform-load)工具将分布的、异构数据源中的数据&#xff0c;如关系数据、平面数据文件等&#xff0c;抽取到临时中间层后进行清洗、转换、集成&#xff0c;最后加载到数据仓库或数据集市中&…

单例模式及应用场景

如果希望自己的代码更优雅、可维护性更高以及更简洁&#xff0c;往往离不开设计模式这一解决方案。 在JS设计模式中&#xff0c;最核心的思想&#xff1a;封装变化&#xff08;将变与不变分离&#xff0c;确保变化的部分灵活&#xff0c;不变的部分稳定&#xff09;。 那么来…

RISC-V特权架构 - CSR寄存器

RV32/64 特权架构 - CSR寄存器 1 CSR地址空间2 CSR定义2.1 用户级2.2 监管级2.3 超级监管级2.4 机器级 3 CSR访问3.1 CSRRW3.2 CSRRS3.3 CSRRC3.4 CSRRWI3.5 CSRRSI3.6 CSRRCI 本文属于《 RISC-V指令集基础系列教程》之一&#xff0c;欢迎查看其它文章。 1 CSR地址空间 RISC&…

[笔记] 使用 Java Swing 实现一个简单的窗口

Java Swing 是一个用于构建图形用户界面&#xff08;GUI&#xff09;的Java库&#xff0c;它提供了丰富的组件和工具&#xff0c;用于创建交互式的桌面应用程序。Swing 是 Java Foundation Classes&#xff08;JFC&#xff09;的一部分&#xff0c;它是 Java 平台的一种标准用户…

超全面!Linux学习资料大合集,21套从入门到进阶,看这篇就够了

本文将为那些渴望学习Linux&#xff0c;但又缺乏相应资料和方向的朋友&#xff0c;提供21套Linux优质资料&#xff0c;包含入门到进阶&#xff0c;希望能对大家有所帮助。 此合集内容及其丰富&#xff0c;涉及方面颇多&#xff0c;不仅适合Linux入门学习的朋友&#xff0c;运维…

麻省理工最新开发AI模型,让机器人实现自主规划路线

文 | BFT机器人 麻省理工学院的研究人员独具匠心地应用了人工智能来解决仓库中的机器人路径规划问题&#xff0c;以此缓解交通拥堵的难题。据该学院介绍&#xff0c;他们的团队开发了一种深度学习模型&#xff0c;其效率比传统的强随机搜索方法高出近四倍&#xff0c;极大地提…

彻底剖析激光-视觉-IMU-GPS融合SLAM算法:理论推导、代码讲解和实战

自主导航是机器人与自动驾驶的核心功能&#xff0c;而SLAM技术是实现自主导航的前提与关键。现有的机器人与自动驾驶车辆往往会安装激光雷达&#xff0c;相机&#xff0c;IMU&#xff0c;GPS等多种模态的传感器&#xff0c;而且已有许多优秀的激光SLAM与视觉SLAM算法。但是每种…

nginx主动检测后端健康模块

一、前言 nginx也有自带的后端检测模块ngx_http_upstream_module&#xff0c;该模块可以做到基本的健康检查&#xff0c;因为该健康检查是被动的&#xff0c;当nginx有请求后&#xff0c;才会对后端服务进行健康检测&#xff0c;当检测到有故障时会将这个请求转发到正常的后端服…

云计算市场,从追求“规模制胜”到走向“用户分化”

文|智能相对论 作者|叶远风 通常来说&#xff0c;价格战放到任何行业&#xff0c;都不是什么好事。 如今&#xff0c;作为曾经的前沿技术创新&#xff0c;云计算行业正在被迫走入价格战的阴霾当中&#xff0c;引发业界担忧。 ECS&#xff08;云服务器&#xff09;最高降36%…

数据库之间数据迁移工具datax

简介 DataX 是阿里云 DataWorks数据集成 的开源版本&#xff0c;在阿里巴巴集团内被广泛使用的离线数据同步工具/平台。DataX 实现了包括 MySQL、Oracle、OceanBase、SqlServer、Postgre、HDFS、Hive、ADS、HBase、TableStore(OTS)、MaxCompute(ODPS)、Hologres、DRDS, databe…

2024.3.1 网络编程

1.思维导图 2.TCP机械臂测试 程序代码&#xff1a; #include <myhead.h> #define SER_IP "192.168.125.254" //服务器端IP #define SER_PORT 8888 //服务器端端口号#define CLI_IP "192.168.199.131" //客户端IP …

C++_数据类型_字符串型

作用 用于表示一串字符 两种风格 C风格字符串&#xff1a;char 变量名[] "字符串值” 示例 注意 C风格的字符串要用双括号括起来 C风格字符串&#xff1a;string 变量名 "字符串值” 注意 用C风格字符串的时候&#xff0c;要包含这个头文件#include <st…

基于React低代码平台开发:构建高效、灵活的应用新范式

文章目录 一、React与低代码平台的结合优势二、基于React的低代码平台开发挑战三、基于React的低代码平台开发实践四、未来展望《低代码平台开发实践&#xff1a;基于React》编辑推荐内容简介作者简介目录前言为什么要写这本书 读者对象如何阅读本书 随着数字化转型的深入&…

GraphView实时图像刷新

代码&#xff1a; GraphViewTest::GraphViewTest(QWidget *parent): QWidget(parent) {ui.setupUi(this);m_bll BllData::getInstance();connect(m_bll, &BllData::returnImgDataSignal, this, &GraphViewTest::returnImgDataSlot);ui.graphicsView->setHorizonta…