vue面试题的示例及解答方法

介绍

这篇文章主要介绍了vue面试题的示例及解答方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

vue越来越受欢迎了。放眼国内外,不管是蝙蝠等大的厂,还是创业公司,vue都有广泛的应用。面试的时候,vue相关技术原理也一定是必考点。可以说,对于任何一个前端工程师来说,掌握vue可能不是一个可选的项,而更像一门“必修课”。

很多人做vue项目都是直接元素等ui中,框架直接上,这些框架虽然在效率上帮了我们很多,但是,对于我们的技术提升而言,其实没有任何的提升,而对于面试官提问的vue核心技术,你也肯定回答不上来。

对于一位开发者来说,如果你对一个技术框架从来都是只停留在会用的上,而从来不去了解这个框架里面核心技术的实现原理和背后的设计思想,我想在技术这条路上肯定走不远,我自己作为开发者我有非常深刻的体会。在这里也给大家做个走心的推荐,蚂蚁设计vue这个ui框架的作者在极客时间推出了一门课,叫vue开发实战(文章底部有购买链接)。我自己也购买了这门课,觉得讲的不错,会带着你掌握vue的技术原理及其应用,也会对其底层原理有所了解,并且通过实战项目,你将具备独立负责vue前端项目的能力,对你的跳槽和面试以及vue的入门将会有非常大的帮助,很多购买者包括我自己也觉得这里面干货满满。推荐给大家有需要的人。

好了,进入正题,今天在这里给大家带来一点vue的进阶面试题。

<强> 1,什么是MVVM ?
答:MVVM是是Model-View-ViewModel的缩写,模型代表数据模型,定义数据操作的业务逻辑,视图代表视图层,负责将数据模型渲染到页面上,ViewModel通过双向绑定把视图和模型进行同步交互,不需要手动操作DOM的一种设计思想。

<强> 2,怎么定义vue-router的动态路由?怎么获取传过来的动态参数?
答:在路由器目录下的指数。js文件中,对路径属性加上/:id。,使用路由器对象的参数。id

<强> 3,vue-router有哪几种导航钩子? ,,
答:三种,一种是全局导航钩子:router.beforeEach(下),从作用:跳转前进行判断拦截第。二种:组件内的钩子;第三种:单独路由独享组件

<强> 4,vuex是什么?怎么使用?哪种功能场景使用它?
答:vue框架中状态管理。在main.js引入店,注入。新建了一个目录商店,……出口。场景有:单页应用中,组件之间的状态。音乐播放,登录状态,加入购物车

<强> 5,MVVM和MVC区别?和其他框架(jquery)区别?那些场景适用?
答:MVVM和MVC都是一种设计思想,主要就是MVC中的控制器演变成ViewModel,, MVVM主要通过数据来显示视图层而不是操作节点,解决了MVC中大量的DOM操作使页面渲染性能降低,加载速度慢,影响用户体验问题。主要用于数据操作比较多的场景。
场景:数据操作比较多的场景,更加便捷

<强> 6,Vue公司的双向数据绑定原理是什么?
答:Vue。js是采用数据劫持结合发布者——订阅者模式的方式,通过Object.defineProperty()来劫持各个属性的setter,吸气,在数据变动时发布消息给订阅者,触发相应的监听回调。

<强> 7,请说下封装vue组件的过程?
答:首先,组件可以提升整个项目的开发效率能够把页面抽象成多个相对独立的模块,解决了我们传统项目开发:效率低、难维护,复用性等问题。

然后,使用Vue.extend方法创建一个组件,然后使用Vue.component方法注册组件。子组件需要数据,可以在道具中接受定义。而子组件修改好数据后,想把数据传递给父组件。可以采用发射方法

<强> 8日聊聊你对Vue.js的模板编译的理解
答:简而言之,就是先转化成AST树,再得到的渲染函数返回VNODE (vue公司的虚拟DOM节点)
详情步骤:

首先,通过编译编译器把模板编译成AST语法树(抽象语法树即源代码的抽象语法结构的树状表现形式),编译是createCompiler的返回值,createCompiler是用以创建编译器的。负责合并选项。

然后,AST会经过生成(将AST语法树转化成渲染功能字符串的过程)得到渲染函数,渲染的返回值是VNODE, VNODE是vue的虚拟DOM节点,里面有(标签名,子节点,文本等等)

<强> 9日& lt; keep-alive> & lt;/keep-alive>的作用是什么,如何使用?
答:包裹动态组件时,会缓存不活动的组件实例,主要用于保留组件状态或避免重新渲染;
使用:简单页面时
缓存:,& lt;点火电极包括=弊榧白4? lt;/keep-alive>
不缓存:& lt;维生排除=弊榧白4? lt;/keep-alive>

vue面试题的示例及解答方法