day01 vue的基础使用

一、Vue知识点总结第一天



一、什么是vue?

核心理念:数据驱动视图,组件化开发
1、用于构建用户页面的渐进式框架
2、自底向上逐层应用
3、Vue核心库只关心视图层

二、为什么学习流行框架?

1、轻量级框架:只关注视图层
2、简单易学:国人开发中文文档,易于理解和学习
3、视图、数据、结构分离;使操作数据更简单
4、不需要进行逻辑代码的修改。只需要操作数据就能完成相关操作
5、虚拟DOM:不在使用原生的dom节点,极大解放dom操作
6、运行速度更快

三、框架和库的区别:

3.1框架

1、完整的解决方案
2、对项目侵入性较大
3、更换框架需要重构整个项目

3.2库

1、提供一小部分功能
2、对项目侵入性较小
3、更换功能切换其他库即可

四、MVC和MVVM的区别:

4.1MVC

1、model-View-Controller(后端分层开发概念)
v(view 视图层)展示数据,发送请求->C(controller调度层)接收数据,相应数据->M(model模型层)处理数据和数据库进行交换数据->数据库

4.2MVVM

V(view视图层)展示数据->VM(view-model)连接view和model->M(model 模型层)进行数据处理

五、vue的代码结构

<script>
 let vm = new Vue({
 el: "#app", // 控制区域
 data: { // 存放数据
 	}
 methods: { // 存放的⽅法
 	}
 })
</script>

六、差值表达式、v-text、v-html

6.1差值表达式{{}}

可以插入内容进行简单的计算

6.2、v-text、v-html

v-text:类似于js中的innerText覆盖元素中的内容
v-html:类似于js中的innerHTML,可识别富文本

6.3、v-text和v-html的异同

相同点:都会覆盖元素
不同点:v-html可以解析富文本

七、v-bind

v-bind:src(属性绑定);简写:src

八、v-on

v-on:事件类型(事件绑定);简写@:事件类型

九、事件修饰符

9.1、.stop

阻止冒泡 从里往外

9.2、.prevent

阻止默认事件

9.3、.capture

阻止捕获事件

9.4、.self

事件本身才触发

9.5、.once

事件触发一次

十、v-model数据双向绑定

原理:通过劫持结合发布的订阅者模式和object.defineproprety()劫持各个属性的setter和getter;当数据发生变化时就发送消息给订阅者触发监听。

十一、vue中样式的使用

11.1、使用class样式

1、数组 :class=“[class1,class2]”
2、三目表达式 :class=“age<18?class1:class2”
3、对象 :class{red:ture}
对象的键是属性的名字,值是Booleam类型
4、数组内置对象 :class=“[{‘red’:true},{fs30:false}]”

11.2、使用内联样式

1、直接写在元素上通过:style的形式,书写样式对象

<div :style="{color : 'red','font-size' : '30px'}">

2、将样式对象,定义到data中,并直接引用到:style中

<body>
 <div id="app">
 <div :style=style1>红⾊字体</div>
 <div :style=style2>字号30px、字体加粗</div>
 </div>
</body>
<script>
 let vm = new Vue({
 		el: "#app",
 		data: {
 			style1: 'color:red',
 			style2: {
 				fontSize: "30px",
 				"font-weight": 700
 						}
 				},
		 methods: {}
 })
</script>

3、在:style中通过数组,引用多个data上的样式对象
4、在:style 中通过函数返回对象

十二、v-for和key属性

12.1、遍历数组

<body>
 <div id="app">
 <!-- item:数组的每⼀项 index:数组的索引(索引从0开始) -->
 <div v-for="(item,index) in list" :key="item">{{item}}</div>
 </div>
</body>
<script>
 let vm = new Vue({
 	el: "#app",
 	data: {
 		list: [
 				1, 2, 3, 4
 				]
 		},
 	methods: {}
 })
</script>

12.2、遍历对象

<body>
 <div id="app">
 <!-- value:值 key:键 index:索引 -->
 <div v-for="(value,key,index) in obj" :key="value">{{value}}</div>
 </div>
</body>
<script>
 let vm = new Vue({
 	el: "#app",
 	data: {
 	obj: {
 		name1: '⼩明',
 		name2: '⼩红',
 		name3: '⼩花',
 		name4: '⼩亮',
 		}
 	},
 	methods: {}
 })
</script>

12.3、遍历数字

<!-- 索引从1开始 -->
<div v-for="num in 10">{{num}}</div>

12.4、key

1、key只能是字符串或者数字 2、key值是唯一的 3、key作用:提高重排效率,就地复用

十三、v-if和v-show(显示隐藏元素)

v-if通过删除dom元素来实现,v-show是设置display:none来实现
只修改⼀次的时候可以使⽤v-if,频繁切换的时候可以使⽤v-show

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值