Vue学习:1.V标签综合1
认识V标签
目录
Vue.js 中常用的 v- 前缀标签(指令)包括但不限于以下几种:
v-text:
- 用法:
<span v-text="expression"></span> - 功能:根据表达式
expression的值更新元素的文本内容。它与双大括号插值{{ }}类似,但不会解析其内容作为 HTML,而是直接作为纯文本输出,有助于防止潜在的 XSS 攻击。
- 用法:
v-html:
- 用法:
<div v-html="expression"></div> - 功能:将表达式
expression的值作为 HTML 片段插入元素内部。注意,这会覆盖元素原有的内容,并且可能带来安全风险,如果expression的值包含不受信任的用户输入,务必确保做好 HTML 渲染的安全处理。
- 用法:
v-bind (缩写为
:):- 用法:
<a :href="url">Link</a>或<input :value="inputValue"> - 功能:动态绑定一个或多个属性到表达式。它可以用于绑定各种属性,如
class、style、src、href、value等。支持对象语法(如v-bind="{ attr1: value1, attr2: value2 }")和动态属性名(如v-bind:[dynamicAttr]="expression")。
- 用法:
v-on (缩写为
@):- 用法:
<button @click="handleClick">Click me</button>或<input @keyup.enter="onEnterKeyPressed"> - 功能:绑定事件监听器。事件名称(如
click、input、keyup等)紧跟在v-on后面,事件处理器是表达式。支持事件修饰符(如.stop、.prevent、.capture、.self、.once等)以改变原生事件的行为。
- 用法:
v-if / v-else / v-else-if:
用法:
<div v-if="condition">
<!-- 显示条件为 true 时的内容 -->
</div>
<div v-else-if="anotherCondition">
<!-- 显示另一个条件为 true 时的内容 -->
</div>
<div v-else>
<!-- 当以上条件均不满足时显示的内容 -->
</div>功能:基于表达式
condition的布尔值有条件地渲染元素。v-else和v-else-if作为辅助分支与v-if结合使用,提供更复杂的条件逻辑。
v-show:
- 用法:
<div v-show="expression">Content</div> - 功能:基于表达式
expression的布尔值控制元素的显示/隐藏。与v-if不同的是,v-show通过 CSS 的display属性切换元素可见性,而非完全移除/添加元素,因此有更高的切换性能开销但首次渲染更快。
- 用法:
v-for:
- 用法:
<li v-for="(item, index) in items" :key="item.id">{{ item.name }}</li> - 功能:遍历数组或对象(需要使用
v-bind:key提供唯一键),根据循环变量(如item和index)生成重复的DOM元素。
- 用法:
v-model:
- 用法:
<input v-model="inputValue">或<textarea v-model="textAreaContent"></textarea> - 功能:实现双向数据绑定,在表单元素(如输入框、复选框、单选框、选择框等)与 Vue 实例的数据属性之间自动同步值。支持修饰符(如
.trim、.number、.lazy等)以定制绑定行为。
- 用法:
V标签综合使用:图片切换案例
实现功能:
创建一个图片展示框,配有两个按钮:前后切换。点击任一按钮,相应切换上一张或下一张图片。当显示首张图片时,前向切换按钮隐藏;当显示末张图片时,后向切换按钮消失。
思路:
“点击按钮切换图片”实质是修改当前显示框里图片的索引;“按钮隐藏”可根据当前显示图片在数组中的位置索引使用v-show来判断显示还是隐藏。
代码:
html:
<div id="app">
<button v-show="index > 0" @click="index--">上一页</button>
<img :src="list[index]" alt="" width="200px">
<button v-show="index < list.length - 1" @click="index++">下一页</button>
</div>
js:
<script>
const app = new Vue({
el: '#app',
data: {
index: 0,
list: ['../aaa/1.jpg',
'../aaa/2.jpg',
'../aaa/3.jpg',
'../aaa/4.jpg']
}
})
</script>
var code = "46cce7a2-feb3-40be-97b6-5b9fa77b0d65"
Vue学习:1.V标签综合1的更多相关文章
- vue学习之template标签
HTML5提供的新标签,具有以下特性: 1.该元素天生display:none,同时模板元素内部内容也是隐藏的 2.位置任意,可以在<head>中,也可以在<body>或者&l ...
- vue学习第一部
目录 基础操作 vue基础使用 步骤 vue的框架思想(mvvm) 显示数据 vue 常用指令 属性操作 事件绑定 操作样式 条件渲染指令 列表渲染指令 vue对象提供的属性功能 过滤器 计算和侦听属 ...
- vue学习笔记(二)——简单的介绍以及安装
学习编程需要的是 API+不断地练习^_^ Vue官网:https://cn.vuejs.org/ 菜鸟教程:http://www.runoob.com/vue2/vue-tutorial.html ...
- day 82 Vue学习二之vue结合项目简单使用、this指向问题
Vue学习二之vue结合项目简单使用.this指向问题 本节目录 一 阶段性项目流程梳理 二 vue切换图片 三 vue中使用ajax 四 vue实现音乐播放器 五 vue的计算属性和监听器 六 ...
- day 81 Vue学习一之vue初识
Vue学习一之vue初识 本节目录 一 Vue初识 二 ES6的基本语法 三 Vue的基本用法 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 vue初识 vue称为渐进式js ...
- day 81 Vue学习二之vue结合项目简单使用、this指向问题
Vue学习二之vue结合项目简单使用.this指向问题 本节目录 一 阶段性项目流程梳理 二 vue切换图片 三 vue中使用ajax 四 vue实现音乐播放器 五 vue的计算属性和监听器 六 ...
- day 80 Vue学习一之vue初识
Vue学习一之vue初识 本节目录 一 Vue初识 二 ES6的基本语法 三 Vue的基本用法 四 xxx 五 xxx 六 xxx 七 xxx 八 xxx 一 vue初识 vue称为渐进式js框架 ...
- Vue学习笔记-Vue.js-2.X 学习(四)===>脚手架Vue-CLI(基本工作和创建)
(五) 脚手架Vue-CLI 一 Vue-CLI前提(nodejs和webpack) 二 Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nod ...
- Vue学习笔记-Vue.js-2.X 学习(一)===>基本知识学习
一 使用环境: windows 7 64位操作系统 二 IDE:VSCode/PyCharm 三 Vue.js官网: https://cn.vuejs.org/ 四 下载安装引用 方式1:直接 ...
- Vue学习笔记-nodejs+vue-cli4+webpack按装配置+项目创建
一 使用环境: windows 7 64位操作系统 二 Vue学习-nodejs按装配置,Node.js 就是运行在服务端的 JavaScript. 1. 去nodejs的官网下载 https: ...
随机推荐
- Apsara Stack 技术百科 | 可运营的行业云,让云上资源跑起来
简介:企业级云管理平台,如何打造千人千面的个性化体验,从应用.云资源.硬件等进行全局智能优化,实现资源配置的最佳配比,构建精细化运营能力? 距离第一例新冠疫情病例的发现,不知不觉中已经过去两年, ...
- [FAQ] Python的虚拟环境和包管理
1. 创建虚拟环境 $ python -m venv test-env 2. 激活虚拟环境 windows:tutorial-env\Scripts\activate (powershell: . ...
- WPF 已知问题 InputEventArgs 的 Timestamp 属性是静态的导致事件之间相互影响
本文记录一个 WPF 已知的设计问题,当前此问题已经被大佬修复,这个设计问题刚好属于比较边缘的模块,我写了这么多年的代码还没有踩到这个坑一次,也没有听到有谁提到这个坑 远古时候,不知道大佬是故意还是失 ...
- 2018-4-15-WPF-在-Alt+Tab-隐藏窗口
title author date CreateTime categories WPF 在 Alt+Tab 隐藏窗口 lindexi 2018-04-15 10:13:40 +0800 2018-3- ...
- Istio微服务入门---通过istio部署微服务实现灰度发布(15)
一.Istio简介 1.1 Istio介绍 官方文档:https://istio.io/docs/concepts/what-is-istio/ 中文官方文档:https://istio.io/zh/ ...
- vue中vant-list组件实现下拉刷新,上滑加载
后端返回的数据是一股脑的情况(不是按pageSize,pageNum一组一组的发送)时,前端使用vant-list实现懒加载需要再写一点js,记录一下 main.js: Vue.use(List); ...
- 【HarmonyOS】安装DevEco Studio后检查环境出现ohpm not set up
按照官网的操作方式,下载完ohpm总是检测不到 打开cmd,发现我之前因为其他项目改过编码 输入 regedit 打开注册表编辑页 按路径[计算机\HKEY_LOCAL_MACHINE\SOFTWAR ...
- ITIL4中的关键概念
1.价值和价值共创 什么是价值 通俗表达:这有啥用? 正式表达:这能带来什么益处或起什么作用? 反问式求证: 假如没有的话,会有什么后果? 具体情境提问:如果缺少IT运维人员,业务系统会面临怎样的状况 ...
- scp本地服务器和远程服务器拷贝文件
上传本地文件到服务器 scp 本地路径 用户名@远程服务器ip:远程路径 下载文件 scp 用户名@远程服务器ip:远程路径 本地路径 -r 是上传下载本地目录到远程 远程文件
- android中Room数据库的基本使用
简介: 还在使用原生的sqllite?有这么清爽且稳如狗的room为啥不用呢? Room是Google官方推荐使用的数据库,相比较某些优秀数据库框架来说,不用过于担心某天库会停止维护,且访问数据库非常 ...