当前位置 博文首页 > 山间漫步人生路的博客:vue前端面试
山间漫步人生路的博客:vue前端面试
作者:[db:作者]
时间:2021-06-30 21:18
- vue优点?
答:轻量级框架:只关注视图层,是一个构建数据的视图集合,大小只有几十kb;
简单易学:国人开发,中文文档,不存在语言障碍 ,易于理解和学习;
双向数据绑定:保留了angular的特点,在数据操作方面更为简单;
组件化:保留了react的优点,实现了html的封装和重用,在构建单页面应用方面有着独特的优势;
视图,数据,结构分离:使数据的更改更为简单,不需要进行逻辑代码的修改,只需要操作数据就能完成相关操作;
虚拟DOM:dom操作是非常耗费性能的, 不再使用原生的dom操作节点,极大解放dom操作,但具体操作的还是dom不过是换了另一种方式;
运行速度更快:相比较与react而言,同样是操作虚拟dom,就性能而言,vue存在很大的优势。
2.vue父组件向子组件传递数据?
答:通过props
3.子组件像父组件传递事件?
答:
e
m
i
t
方
法
4.
v
?
s
h
o
w
和
v
?
i
f
指
令
的
共
同
点
和
不
同
点
?
答
:
共
同
点
:
都
能
控
制
元
素
的
显
示
和
隐
藏
;
不
同
点
:
实
现
本
质
方
法
不
同
,
v
?
s
h
o
w
本
质
就
是
通
过
控
制
c
s
s
中
的
d
i
s
p
l
a
y
设
置
为
n
o
n
e
,
控
制
隐
藏
,
只
会
编
译
一
次
;
v
?
i
f
是
动
态
的
向
D
O
M
树
内
添
加
或
者
删
除
D
O
M
元
素
,
若
初
始
值
为
f
a
l
s
e
,
就
不
会
编
译
了
。
而
且
v
?
i
f
不
停
的
销
毁
和
创
建
比
较
消
耗
性
能
。
总
结
:
如
果
要
频
繁
切
换
某
节
点
,
使
用
v
?
s
h
o
w
(
切
换
开
销
比
较
小
,
初
始
开
销
较
大
)
。
如
果
不
需
要
频
繁
切
换
某
节
点
使
用
v
?
i
f
(
初
始
渲
染
开
销
较
小
,
切
换
开
销
比
较
大
)
。
5.
如
何
让
C
S
S
只
在
当
前
组
件
中
起
作
用
?
答
:
在
组
件
中
的
s
t
y
l
e
前
面
加
上
s
c
o
p
e
d
6.
<
k
e
e
p
?
a
l
i
v
e
>
<
/
k
e
e
p
?
a
l
i
v
e
>
的
作
用
是
什
么
?
答
:
k
e
e
p
?
a
l
i
v
e
是
V
u
e
内
置
的
一
个
组
件
,
可
以
使
被
包
含
的
组
件
保
留
状
态
,
或
避
免
重
新
渲
染
。
7.
如
何
获
取
d
o
m
?
答
:
r
e
f
=
"
d
o
m
N
a
m
e
"
用
法
:
t
h
i
s
.
emit方法 4.v-show和v-if指令的共同点和不同点? 答: 共同点:都能控制元素的显示和隐藏; 不同点:实现本质方法不同,v-show本质就是通过控制css中的display设置为none,控制隐藏,只会编译一次;v-if是动态的向DOM树内添加或者删除DOM元素,若初始值为false,就不会编译了。而且v-if不停的销毁和创建比较消耗性能。 总结:如果要频繁切换某节点,使用v-show(切换开销比较小,初始开销较大)。如果不需要频繁切换某节点使用v-if(初始渲染开销较小,切换开销比较大)。 5.如何让CSS只在当前组件中起作用? 答:在组件中的style前面加上scoped 6.<keep-alive></keep-alive>的作用是什么? 答:keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。 7.如何获取dom? 答:ref="domName" 用法:this.
emit方法4.v?show和v?if指令的共同点和不同点?答:共同点:都能控制元素的显示和隐藏;不同点:实现本质方法不同,v?show本质就是通过控制css中的display设置为none,控制隐藏,只会编译一次;v?if是动态的向DOM树内添加或者删除DOM元素,若初始值为false,就不会编译了。而且v?if不停的销毁和创建比较消耗性能。总结:如果要频繁切换某节点,使用v?show(切换开销比较小,初始开销较大)。如果不需要频繁切换某节点使用v?if(初始渲染开销较小,切换开销比较大)。5.如何让CSS只在当前组件中起作用?答:在组件中的style前面加上scoped6.<keep?alive></keep?alive