当前位置:网站首页>黑马四小时入门学习记录-2|本地应用
黑马四小时入门学习记录-2|本地应用
2022-07-29 11:35:00 【echo_千】
- 用Vue开发网页效果
- 获取元素,操纵他们
1.内容绑定,事件绑定
v-text
- v-text指令的作用是:设置标签的内容(textContent)
- 默认写法会替换全部内容,使用差值表达式{ {}}可以替换指定内容【{ {}}这个是v-text的缩写】
- 内部支持写表达式
v-html
- v-html指令的作用是:设置元素的innerHTML
- 内容中有html结构会被解析为标签
- v-text指令无论内容是什么,只会解析为文本
- 解析文本使用v-text,需要解析html结构使用v-html
v-on基础
- v-on指令的作用是:为元素绑定事件
- 事件名不需要写on
- 指令可以简写为@
- 绑定的方法定义在methods属性中
- 方法内部通过this关键字可以访问定义在data中数据
v-on补充
传递自定义参数,事件修饰符
- 事件绑定的方法写成函数调用的形式,可以传入自定义参数
- 定义方法时需要定义形参来接收传入的实参
- 事件的后面跟上.修饰符可以对事件进行限制
- .enter 可以限制触发的按键为回车
- 事件修饰符有多种
文档传送门:API — Vue.js
案例——计数器
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>简单计数器</title>
</head>
<body>
<!-- html结构 -->
<div id="app">
<!-- 计数器功能区域 -->
<div>
<button @click="sub">-</button>
<span>{
{num}}</span>
<button @click="add">+</button>
</div>
</div>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>
<!-- 编码 -->
<script>
// 创建Vue实例
var app = new Vue({
el: "#app",
data: {
num: 1,
},
methods: { //这里的方法要写methods不然会报错找不到这些方法
add: function () {
console.log("add");
if (this.num < 10) {
this.num++;
}
else {
alert("不能再加啦!!")
}
},
sub: function () {
console.log("sub");
if (this.num > 0) {
this.num--;
}
else {
alert("已经到最小值啦 :)")
}
}
}
});
</script>
</body>
</html>2.显示切换,属性绑定
v-show:广告、遮罩层
操作标签
- v-show指令的作用是:根据真假切换元素的显示状态
- 原理是修改元素的display,实现显示隐藏
- 指令后面的内容,最终都会解析为布尔值
- 值为true元素显示,值为false元素隐藏
- 数据改变之后,对应元素的显示状态会同步更新
v-if
- v-if指令的作用是:根据表达式的真假切换元素的显示状态
- 本质是通过操纵dom元素来切换显示状态
- 表达式的值为true,元素存在于dom树中,为false,dom树中移除
- 频繁的切换v-show,反之使用v-if,前者的切换消耗小
操作DOM元素,反复操作消耗大。
v-bind:v-bind:属性名=表达式
- v-bind指令的作用是:为元素绑定属性
- 完整写法是v-bind:属性名
- 简写的话可以直接省略v-bind,只保留:属性名
- 隔要动态的增删class建议使用对象的方式
【v-bind是绑定标签的属性,可以改变其中的属性。如:input标签的title,img标签的src、height、width等等。】
案例——图片切换
1.定义图片数组 imgArr:[]
⒉.添加图片索引
3.绑定src属性 v-on
4.图片切换逻辑
5.显示状态切换 v-show
- 列表数据使用数组保存
- v-bind指令可以设置元素属性,,比如src
- v-show和v-if都可以切换元素的显示状态,频繁切换用v-show
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>图片切换</title>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script>
</head>
<body>
<!-- html结构 -->
<div id="app">
<!-- 图片切换功能区域 -->
<!-- 左箭头 -->
<a href="#" @click="prev" v-show="index>0"><img src="./img/prev.png"></a>
<!-- 右箭头 -->
<a href="#" @click="next" v-show="index<imgArr.length-1"><img src="./img/next.png"></a>
<!-- 图片 -->
<img :src="imgArr[index]">
</div>
<!-- 编码 -->
<script>
// 创建Vue实例
var app = new Vue({
el: "#app",
data: {
imgArr: [
"./img/1.jpg",
"./img/2.jpg",
"./img/3.jpg",
"./img/4.jpg"
], //1.定义图片数组
index: 0 //2.添加图片索引
},
methods: {
//4.图片切换逻辑
prev() {
this.index--;
},
next() {
this.index++;
}
}
});
</script>
</body>
</html>3.列表循环,表单元素绑定
v-for
- v-for指令的作用是:根据数据生成列表结构
- 数组经常和v-for结合使用
- 语法是( item,index ) in 数据【in是固定的,item和index可以更换。】
- item 和 index 可以结合其他指令一起使用
- 数组长度的更新会同步到页面上,是响应式的
【v-for是遍历数据,如果要显示出来需要结合v-text使用/{ {}}】
v-model
- 获取和设置表单元素的值(双向数据绑定)
- v-model指令的作用是便捷的设置和获取表单元素的值
- 绑定的数据会和表单元素值相关联
- 绑定的数据←→表单元素的值 双向绑定
案例——记事本
- 列表结构可以通过v-for指令结合数据生成
- v-on结合事件修饰符可以对事件进行限制,比如.enter
- v-on在绑定事件时可以传递自定义参数
- 通过v-model可以快速的设置和获取表单元素的值基于数据的开发方式
新增
流程
- 生成列表结构(v-for 数组)
- 获取用户输入(v-model)
- 回车,新增数据(v-on .enter 添加数据)
运用
1.v-for指令的作用
2.v-model指令的作用
3.v-on指令,事件修饰符
4.通过审查元素快速定位
删除
流程
- 点击删除指定内容(v-on splice 索引)
运用
1.数据改变,和数据绑定的元素同步改变
2.事件的自定义参数
3.splice方法的作用
统计
流程
- 统计信息个数(v-text length)
运用
1.基于数据的开发方式
2. v-text指令的作用
清空
流程
- 点击清除所有信息(v-on 清空数组)
运用
- 基于数据的开发方式
隐藏
流程
- 没有数据时,隐藏元素(v-show v-if 数组非空)
运用
边栏推荐
- Exclusive interview | Cheng Li, chief technology officer of Alibaba: cloud + open source together form a credible foundation for the digital world
- Spark efficient data analysis 02, basic knowledge 13
- Basic. Blocking
- KRYSTAL:审计数据中基于知识图的战术攻击发现框架
- [image detection] Research on cumulative weighted edge detection method based on gray image, with matlab code
- HMS Core Discovery 16 review | with tiger mound, embracing new AI "voice" state
- 一次node文件操作过多排查过程总结
- 多线程顺序运行的 4 种方法,面试随便问!
- 考完PMP后有什么益处
- 使用Tenserboard可视化深度学习训练过程
猜你喜欢

Based on the flask to write a small shopping mall project

即学即用的问题解决思维,给无意识的生活装上“后视镜”

CSDN TOP1“一个处女座的程序猿“如何通过写作成为百万粉丝博主

【年中总结】创业3年,越来越穷,还是坚持架构平台
小笑授权系统V5.0开心版

Std:: vector copy, append, nested access

IPV6基础

593. 有效的正方形

ES6 arrow function this points to

How to start writing helm charts for your kubernetes application
随机推荐
Proficient in audio and video development can really do whatever you want
ES6 arrow function this points to
Similarities and differences of QWidget, qdialog and qmainwindow
微信发红包测试用例
Watch the open source summit first | quick view of the sub Forum & Activity agenda on July 29
Peking University open classes are coming! Welcome to the "AI for science" class
暑假集训week1
PHP basics uses arrays to save data
精通音视频开发是真的可以为所欲为
[image detection] Research on cumulative weighted edge detection method based on gray image, with matlab code
Gbase8s core data backup
一次node文件操作过多排查过程总结
Package Delivery(贪心)
IPV6基础
Steps of project explanation in interview
大伟 Golang之路
golang 实现文件上传下载
Talk about the establishment of performance testing environment
How to start writing helm charts for your kubernetes application
Hutool日期时间