程序员面试干货来啦,今天小编就先为大家整理出5道大厂面试时常见关于 Vue技术栈 的面试题。看看你能答对几道题呢!多多掌握此类面试题,就会增加面试通过的机率哦,后续还有其他类的面试题,请持续关注哟!
11.29. 对于即将到来的 Vue3.0 特性你有什么了解的吗? Vue 3.0 正⾛在发布的路上,Vue 3.0 的⽬标是让 Vue 核⼼变得更⼩、更快、更强⼤,因此 Vue 3.0 增加以下这些新特性: 1. 监测机制的改变 3.0 将带来基于代理 Proxy 的 observer 实现,提供全语⾔覆盖的反应性跟踪。这消除了 Vue 2 当中基于 Object.defifineProperty 的实现所存在的很多限制: 1). 检测属性的添加和删除; 2). 检测数组索引和长度的变更; 3). ⽀持 Map、Set、WeakMap 和 WeakSet。 2. 模板 模板⽅⾯没有⼤的变更,只改了作⽤域插槽,2.x 的机制导致作⽤域插槽变了,⽗组件会重新渲染,⽽ 3.0 把作⽤域插槽改成了函数的⽅式,这样只会影响⼦组件的重新渲染,提升了渲 染的性能。 3. 对象式的组件声明⽅式 1)Vue2.x 中的组件是通过声明的⽅式传⼊⼀系列 option,和 TypeScript 的结合需要通过⼀些装饰器的⽅式来做,虽然能实现功能,但是⽐较⿇烦。3.0 修改了组件的声明⽅式,改成了类 式的写法,这样使得和 TypeScript 的结合变得很容易。 4. 其它⽅⾯的更改 1). ⽀持⾃定义渲染器,从⽽使得 weex 可以通过⾃定义渲染器的⽅式来扩展,⽽不是直接 fork 源码来改的⽅式。 2). ⽀持 Fragment(多个根节点)和 Protal(在 dom 其他部分渲染组建内容)组件,针对⼀些特殊的场景做了处理。 3). 基于 treeshaking 优化,提供了更多的内置功能。 11.30. Vue与Angular的区别 1. 相同点 1). 都⽀持指令:内置指令和⾃定义指令。 2). 都⽀持过滤器:内置过滤器和⾃定义过滤器。 3). 都⽀持双向数据绑定。 4). 都不⽀持低端浏览器。 2. 不同点: 1). Angular的学习成本⾼,⽐如增加了Dependency Injection特性,⽽Vue本⾝提供的API都⽐较简单、直观。 2). 在性能上,Angular依赖对数据做脏检查,所以Watcher越多越慢。 3). Vue使⽤基于依赖追踪的观察并且使⽤异步队列更新。所有的数据都是独⽴触发的。 11.31. 与React的区别 1. 相同点: 1). React采⽤特殊的JSX语法,Vue在组件开发中也推崇编写.vue特殊⽂件格式,对⽂件内容都有⼀些约定,两者都需要编译后使⽤。 2). 内部都使⽤虚拟DOM与DOM Diff算法来提升效率 3). 中⼼思想相同:⼀切都是组件,组件实例之间可以嵌套。 4). 都提供合理的钩⼦函数,可以让开发者定制化地去处理需求。 5). 都不内置列数AJAX,Route等功能到核⼼包,⽽是以插件的⽅式加载。 6). 在组件开发中都⽀持mixins的特性。 2. 不同点: 11.32. $route和 $router的区别是什么? 1. $router是VueRouter的实例,包含了路由跳转的⽅法、钩⼦函数等。 11.33. 路由组件如何响应路由参数的变化 1. ⽅式⼀: ⽤watch 检测 1. // 监听当前路由发⽣变化的时候执⾏ 4. console.log(to.path) 5.// 对路由变化做出响应 2. ⽅式⼆: 组件内导航钩⼦函数 2. // to do somethings 希望这些面试题对你有所帮助!下一期我们会有关于其他大厂面试题。别忘了关注我们的公众号哦,预防走丢! 愿你眼眸有星辰,心中有山海,从此以梦为马,不负韶华! 码上未来,成就你更好的未来!