0.0 自定义组件的使用 【掌握】
先自定义自己的组件

-
引入组件
import 组件名 from '路径/文件名'
-
注册组件
<script>
export default {
components:{ // 组件注册
组件名:组件名,
组件名1
},
data(){ // 数据
return {}
},
methods:{ // 方法
}
}
</script>
-
使用组件
<template>
<div>
<组件名></组件名>
<组件名 />
<!-- 使用组件 -->
<CommonHeader></CommonHeader>
<CommonContent />
<CommonFooter></CommonFooter>
<!-- 第二用法 推荐-->
<common-header></common-header>
<common-content />
<common-footer />
</div>
</template>
2.0 v-bind 【重点】
作用:帮助我们操作节点属性,让属性变成数据驱动
<标签 v-bind:class='表达式' v-bind:style="表达式" v-bind:src="表达式">
</标签>
简写:
<标签 :class='表达式' :style="表达式" :src="表达式">
</标签>
v-bind的src绑定

编辑
v-bind的class绑定

v-bind的style绑定

3.0 其他指令 【了解】
3.1 v-pre
作用:不编译胡须表达式
3.2 v-once
作用:只渲染一次,当他所依赖的数据发生改变时,也不会更新渲染
3.3 v-cloak
作用:隐藏胡须表达式,直到有数据时才渲染,只有直接在项目里引入vuejs才会出现,当前主流脚手架版本没有这个问题

4.0 computed 计算属性 【重点】
用于一堆逻辑计算,返回一个唯一的结果 ,与methods定义方式一样,计算属性直接使用他的函数名(不需要加小括号),就等于他的返回结果
<template>
<div>
{{ 函数名 }}
</div>
</template>
<script>
export default {
....
computed:{
函数名(){
一堆的逻辑运算
return '最终的结果'
}
}
}
</script>
计算属性的特点:
-
计算属性用于一堆逻辑运算,直接使用函数名就等于使用了最终结果
-
计算属性依赖的数据发生改变,他就会重新计算
-
计算属性存在依赖缓存,性能强,如果依赖的数据更新就会重新计算,如果不更新就直接返回上一次的计算结果
computed计算属性 与 methods方法的区别 【面试题】
-
computed计算属性必须有返回值,methods不一定有
-
调用方式不一样,computed计算属性直接使用函数名,methods方法需要
函数名()调用 -
computed计算属性有依赖缓存,methods方法每次调用都会重新计算结果,计算属性如果数据没有改变,他就将上一次缓存的结果直接返回,就不重新计算了
5.0 filters 过滤器【掌握】
作用:用于处理页面数据的显示格式
<template>
<div>
{{ msg | 过滤器函数名 }}
</div>
</template>
<script>
export default {
data(){
return {
mes:'xxx'
}
},
methods:{},
components:{},
computed:{},
filters:{
过滤器函数名(参数){
一堆参数的处理
return '处理完的结果'
}
}
}
</script>
6.0 侦听器 watch 【掌握】
作用:用于监听数据的变化,进行相应函数的操作
<template>
<div>
{{ msg | 过滤器函数名 }}
</div>
</template>
<script>
export default {
data(){
return {
msg:''
}
}
watch:{
需要监听的数据(newVal,oldVal){
// 一堆的后续操作
}
},
}
</script>
7.0 生命周期 【重点】
什么是生命周期?
是指组件从创建到渲染到更新到销毁的周期过程
vue的声明周期分为4大阶段
#注意:他们都是内置选项
// 创建前后
beforeCreate(){}, // 创建前 组件实例对象还没有创建,data里的数据不能访问
created(){}, // 创建后 ******* 组件实例已经创建完毕,data里的数据可以访问,此时页面dom还没挂载
#注: created 一般用于初始化页面数据发送ajax
// 挂载前后
beforeMount(){} // 挂载前 生成虚拟dom,页面dom还没有挂载
mounted(){} // 挂载后 ******* 页面dom已经挂载完毕,可以操作dom
#注: mounted 一般用于操作dom节点
// 更新前后
beforeUpdate(){} // 更新前
updated(){} // 更新后
// 销毁前后
beforeDestroy(){} // 销毁前 ** 一般用于清除绑定事件、定时器
destroyed(){} // 销毁
总结:vue的生命周期的作用,在组件各个阶段执行相应的生命周期钩子函数,给用户添加自己代码的机会


作业:
1 购物车案例
2 交互代码敲3遍
3 面试题: 计算属性computed和方法methods有什么区别?
4 选做题:操作题
5 手写配置选项 和 指令
![buu [AFCTF2018]MyOwnCBC 1](https://img-blog.csdnimg.cn/b53a15be88f14bb49e60ad3d0ec8fbc7.png)






![[CTF/网络安全] 攻防世界 xff_referer 解题详析](https://img-blog.csdnimg.cn/11f390c5dd2c45fda42155833b78bd99.png#pic_center)











