程序笔记   发布时间:2022-07-21  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Vue 面试题整理大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

1.css 只在当前组件起作用? 答:在 style 标签中写入 scoped 即可 例如:@H_607_5@

2.v-if 和 v-show 区别? 答:v-if 按照条件是否渲染,v-show 是 display 的 block 或 none; v-if 操作的是元素的创建和插入,v-show 操作的是元素的 display 属性。v-show 具有更高的初始渲染开销, v-if 具有更高的切换开销。因此在程序运行过程中条件很少发生改变时使用 v-if,需要频繁的切换则使用 v-show, v-if 用于后台的权限列表,v-show 用于前台数据展示和选项卡@H_607_5@

3.route 和 router 的区别? 答:route 是路由信息对象,包括 path,params,hash,query,fullPath,matched,name 等路由信息参数。 而 router 是“路由实例”对象包括了路由的跳转方法,钩子函数等。@H_607_5@

4.vue.js 的两个核心是什么? 答:数据驱动、组件系统@H_607_5@

5.vue 几种常用的指令? 答:v-for、v-if、v-bind、v-on、v-show、v-else、v-model@H_607_5@

6.vue 常用的修饰符? 答:.prevent: 提交事件不再重载页面; .stop: 阻止单击事件冒泡; .self: 当事件发生在该元素本身而不是子元素的时候会触发; .capture: 事件侦听,事件发生的时候会调用@H_607_5@

7.v-on 可以绑定多个方法吗? 答:可以@H_607_5@

8.vue 中 key 值的作用? 答:key 的作用主要是为了高效的更新虚拟 DOM。 当页面的数据发生变化时,Diff 算法只会比较同一层级的节点: 如果节点类型不同,直接干掉前面的节点,再创建并插入新的节点,不会再比较这个节点以后的子节点了。 如果节点类型相同,则会重新设置该节点的属性,从而实现节点的更新。@H_607_5@

9.什么是 vue 的计算属性? 答:在模板中放入太多的逻辑会让模板过重且难以维护,在需要对数据进行复杂处理,且可能多次使用的情况下,尽量采取计算属性的方式。 好处:①使得数据处理结构清晰;②依赖于数据,数据更新,处理结果自动更新;③计算属性内部 this 指向 vm 实例; ④在 template 调用时,直接写计算属性名即可;⑤常用的是 getter 方法,获取数据,也可以使用 set 方法改变数据; ⑥相较于 methods,不管依赖的数据变不变,methods 都会重新计算,但是依赖数据不变的时候 computed 从缓存中获取,不会重新计算。@H_607_5@

10.vue 等单页面应用及其优缺点? 答:优点:Vue 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件,核心是一个响应的数据绑定系统。 MVVM、数据驱动、组件化、轻量、简洁、高效、快速、模块友好。 缺点:不支持低版本的浏览器,最低只支持到 IE9;不利于 SEO 的优化(如果要支持 SEO, 建议通过服务端来进行渲染组件);第一次加载首页耗时相对长一些;不可以使用浏览器的导航按钮 需要自行实现前进、后退。@H_607_5@

11.怎么定义 vue-router 的动态路由? 怎么获取传过来的值 答:在 router 目录下的 index.js 文件中,对 path 属性加上 /:id,使用 this.$route.params.id 获取。@H_607_5@

12.vue 初始化页面闪动问题 首先:在 css 里加上[v-cloak] { display: none; }。 如果没有彻底解决问题,则在根元素加上style="display: none;" :style="{display:'block'}"@H_607_5@

13.如何获取 dom? 答:ref="domname" 用法:this.$refs.domname@H_607_5@

14.$nextTick 的使用? 当你修改了 data 的值后是不能立刻获取这个 dom 元素更新后的值的, 你需要使用 $nextTick 这个回调,让修改后的 data 值渲染更新到 dom元 素之后在才能成功获取。@H_607_5@

15.vue 组件中 data 为什么必须是一个函数? 答:首先对象是引用数据类型,如果data是一个对象那么就会造成,使用同一个地址多个 data 数据复用, 如果 data 是一个函数,那么每次调用的时候都会返回一个新的对象,这样每个组件会维护各自的 data 数据。@H_607_5@

16.v-if 和 v-for 的优先级? 当 v-if 与 v-for 一起使用时,v-for 具有比 v-if 更高的优先级,这意味着 v-if 将分别重复运用于每个 v-for 循环中。所以,不推荐v-if和v-for同时使用。 如果 v-if 和 v-for 一起用的话,vue 中的的会自动提示 v-if 应该放到外层去。@H_607_5@

17.assets 和 static 的区别? 答:相同点:assets 和 static 两个都是存放静态资源文件。存放项目中所需要的资源文件图片,字体图标, 样式文件等相同点:assets 中存放的静态资源文件在项目打包时,会将其中的静态资源文件进行打包上传, static 中放置的静态资源文件就不会走打包压缩格式化等流程,而是直接进入打包好的目录,直接上传到服务器。 在打包时会提高一定的效率,但是文件体积也会较大。在服务器中就会占据更多的空间。@H_607_5@

18.vue 和 jQuery 的区别? 答:jQuery 是使用选择器($)选取 DOM 对象,对其进行赋值、取值、事件绑定等操作。数据和界面是在一起的。 Vue 则是通过 Vue 对象将数据和 View 完全分离开来了。对数据进行操作不再需要引用相应的 DOM 对象。@H_607_5@

19.delete 和 Vue.delete 删除数组的区别? 答:delete 只是被删除的元素变成了 empty/undefined 其他的元素的键值还是不变。 Vue.delete 直接删除了数组,改变了数组的键值。@H_607_5@

20.Vue-router 跳转和 LOCATIOn.href 有什么区别? 答:使用 LOCATIOn.href='/url' 来跳转,简单方便,但是刷新了页面; 使用 history.pushState('/url'),无刷新页面,静态跳转; 引进 router,然后使用 router.push('/url') 来跳转,使用了 diff 算法,实现了按需加载,减少了 dom 的消耗。@H_607_5@

大佬总结

以上是大佬教程为你收集整理的Vue 面试题整理全部内容,希望文章能够帮你解决Vue 面试题整理所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。