大家好,这里是小张,今天给大家带来的是vue的面试题一些总结,希望能够给大家带来些帮助同时也希望大家可以多多支持小张。
另外这里小张给大家推荐一款什么阶段都适用的在校刷题神器以及可以模拟大厂面试的超好用神器 点击这里进入刷题神器
目录
前言
CSDN话题挑战赛第1期
活动详细地址https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f
参赛话题:前端面试宝典
话题描述:欢迎各位加入话题创作得小伙伴,如果我没有猜错得话,我觉得你是应该同我一样是一位前端人。如今前端在IT事业中的占比越来越重,已经成为不可缺少的部分,前端技术也是层出不穷,各种技术类、技术框架也蜂拥而出,前端面试的难度也随之增加,如果我们拥有一套前端面试宝典。如果你是应聘者:你就可以从容的solo面试官,如果你是面试官:你就可以将应聘者拷问到骨子里!
总之我们大家一起将自己的面试经验以及学习到的知识点汇聚于此,形成一套体系的前端面试宝典。让读者无论是面试还是学习都能够有非常大的收获。就让我们携手共筑前端面试宝典吧!!!
Vue面试题
题目:说说你对 SPA 单页⾯的理解,它的优缺点分别是什么?
答案:SPA( single-page application )仅在 Web 页⾯初始化时加载相应的 HTML、JavaScript 和 CSS。⼀旦页⾯加载完成,SPA 不会因为⽤户的操作⽽进⾏页⾯的重新加载或跳转;取⽽代之的是利⽤路由机制实现 HTML 内容的变换,UI 与⽤户的交互,避免页⾯的重新加载。
优点:
⽤户体验好、快,内容的改变不需要重新加载整个页⾯,避免了不必要的跳转和重复渲染;
基于上⾯⼀点,SPA 相对对服务器压⼒⼩;
前后端职责分离,架构清晰,前端进⾏交互逻辑,后端负责数据处理;
缺点:
初次加载耗时多:为实现单页 Web 应⽤功能及显⽰效果,需要在加载页⾯的时候将 JavaScript、CSS 统⼀加载,部分页⾯按需加载;
前进后退路由管理:由于单页应⽤在⼀个页⾯中显⽰所有的内容,所以不能使⽤浏览器的前进后退功能,所有的页⾯切换需要⾃⼰建⽴堆栈管理;
SEO 难度较⼤:由于所有的内容都在⼀个页⾯中动态替换显⽰,所以在 SEO 上其有着天然的弱势。
题目:v-show 与 v-if 有什么区别?
答案:v-if 是真正的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和⼦组件适当地被销毁和重建;也是惰性的:如果在初始渲染时条件为假,则什么也不做——直到条件第⼀次变为真时,才会开始渲染条件块。
v-show 就简单得多——不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 的 “display” 属性进⾏切换。
所以,v-if 适⽤于在运⾏时很少改变条件,不需要频繁切换条件的场景;v-show 则适⽤于需要⾮常频繁切换条件的场景。
题目:怎样理解 Vue 的单向数据流?
答案:所有的 prop 都使得其⽗⼦ prop 之间形成了⼀个单向下⾏绑定:⽗级 prop 的更新会向下流动到⼦组件中,但是反过来则不⾏。
这样会防⽌从⼦组件意外改变⽗级组件的状态,从⽽导致你的应⽤的数据流向难以理解。
额外的,每次⽗级组件发⽣更新时,⼦组件中所有的 prop 都将会刷新为最新的值。这意味着你不应该在⼀个⼦组件内部改变 prop。如果你这样做了,Vue 会在浏览器的控制台中发出警告。⼦组件想修改时,只能通过 $emit 派发⼀个⾃定义事件,⽗组件接收到后,由⽗组件修改。
题目:谈谈你对 keep-alive 的了解?
答案:keep-alive 是 Vue 内置的⼀个组件,可以使被包含的组件保留状态,避免重新渲染 ,其有以下特性:
⼀般结合路由和动态组件⼀起使⽤,⽤于缓存组件;提供 include 和 exclude 属性,两者都⽀持字符串或正则表达式, include 表⽰只有名称匹配的组件会被缓存,exclude 表⽰任何名称匹配的组件都不会被缓存 ,其中 exclude 的优先级⽐ include ⾼;
对应两个钩⼦函数 activated 和 deactivated ,当组件被激活时,触发钩⼦函数 activated,当组件被移除时,触发钩⼦函数deactivated。
题目:什么是 MVVM?
答案:Model–View–ViewModel (MVVM) 是⼀个软件架构设计模式,由微软 WPF 和 Silverlight 的架构师 Ken Cooper 和 Ted Peters开发,是⼀种简化⽤户界⾯的事件驱动编程⽅式。由 John Gossman(同样也是 WPF 和 Silverlight 的架构师)于2005年在他的博客上发表MVVM 源⾃于经典的 Model–View–Controller(MVC)模式 ,MVVM 的出现促进了前端开发与后端业务逻辑的分离,极⼤地提⾼了前端开发效率,MVVM 的核⼼是 ViewModel 层,它就像是⼀个中转站(value converter),负责转换 Model 中的数据对象来让数据变得更容易管理和使⽤,该层向上与视图层进⾏双向数据绑定,向下与 Model 层通过接⼝请求进⾏数据交互,起呈上启下作⽤。
结束语
CSDN话题挑战赛第1期
活动详细地址:
https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f
到了这里今天的vue面试题目的分享就已经全部结束了,感谢大家的观看,希望这些内容可以给大家带来些帮助,小张在这里感谢大家的支持!