vue中的一些概念nextTick、keep-alive、mixin、slot、key、常用修饰符、过滤器等

60 篇文章 0 订阅
22 篇文章 0 订阅

vue中的nextTick?

nextTick(回调函数) 将回调函数延迟到下次dom更新循环结束之后执行

nexttick的应用场景:(由于Vue中的dom更新是异步的;)

1.在vue的生命周期created中进行dom操作,一定要放在nexttick函数中执行;

2.在数据变化后要执行某个操作,而这个操作需要随着数据改变而改变dom结构时;

vue中的keep-alive?

是vue的内置组件,能在组件切换过程中将状态保留在内存中,防止重复渲染dom

vue中的mixin?

Mixin是类,其他类可以访问mixin类的方法而不必成为其子类;
本质是一个js对象,包含组件中的任意功能选项,如data components methods created 	
computed等

应用场景?

有两个或者多个组件的逻辑相同时,写一套代码,多组适用

vue中的slot?

Slot插槽 占位符 
具名插槽 多个插槽区分名字
作用域插槽 在父级可以访问子组件中的数据
独占默认插槽的缩写语法

vue中常用的指令有哪些?

指令(Directives)是带有 *v- 前缀 *的特殊属性。指令的职责就是当其表达式的值
改变时相应地将某些行为应用到 DOM 上。
简而言之,可以通过指令,来处理复杂的一些渲染。

数据绑定指令:
	v-text v-html v-model
属性指令
	v-bind
条件指令
	v-if v-show
循环指令
	v-for
事件绑定指令
	v-on

vue的v-for指令中key的作用:

key是给每个节点提供的唯一id,在同级节点的diff过程中,可以根据key快速对比是否为相同节点,并且利用key的唯一
性,可以生成map来更快获取相应节点;另外,指定key后,就不再采用“就地复用”策略,可以保证渲染准确性。

原理:

1.vue实现了一套虚拟dom,使我们可以不直接操作dom,只操作数据就可以重新渲染页面,隐藏在背后的原理就是高效的diff算法;
2.当页面数据发生变化时,diff算法只会比较同一层级的节点;
3.如果节点类型不同,直接干掉前面的节点,再创建并插入新的节点,不会再比较这个节点后面的子节点;
如果节点类型相同,则会重新设置该节点属性,从而实现节点更新;
4.使用key给每个节点做一个唯一标识,diff算法就可以判断此节点正确失败,“就地更新”找到正确位置插入新节点;

Vue中的常用修饰符?
修饰符用于限定类型以及类型成员的声明

1.表单修饰符
v-model.lazy
v-model.trim
v-model.number
2.事件修饰符
.stop 阻止冒泡 e.stopPropagation
.prevent 阻止默认事件 e.preventDefault
.self 只在e.target==e.currentTarget时触发
.once 事件只能触发一次
.capture 
.passive 等同于.lazy修饰符
.native 绑定原生事件
3.鼠标按钮修饰符
@click.left 
@click.right
@click.middle
4.键盘修饰符
@keyup.enter  @keydown.tab .delete
5.v-bind修饰符
.async
.prop
.camel

Vue中的过滤器了解吗?过滤器的应用场景有哪些?

使用符号  原始数据 | 过滤器名字 
多个过滤器可以串用
过滤器实际上不改变原始数据,只是对数据进行加工处理后返回的数据进行调用,可以看作是一个函数;

ps:vue3已废弃filter


评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值