IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> vue面试题真题 -> 正文阅读

[JavaScript知识库]vue面试题真题

1.v-if和v-show的区别

?

2.v-for中为什么用key

?3.描述Vue组件生命周期(父子组件)

?4.Vue组件如何通讯

5. 描述组件渲染更新的过程

6.双向数据绑定v-model的实现原理?

?7.对MVVM的理解

8.computed有何I我特点?

?9.为何组件data必须是一个函数

data() { return { 对象?} }? data是函数,return出对象

export default看似是一个对象,.vue文件编译出来,实际是一个class 一个类,在每个地方使用的时候,实际是对class的实例化,在实例化的时候执行data,如果data不是函数的话,那每个组件的实例都是一样的,就共享了。就是如果不是函数,这个组件在两个地方用,如果一个地方的data修改了,那另一个地方的也修改了。如果是函数,两个地方实例化,那两边的data就是在闭包中,就不会相互影响。

?10.ajax请求应该放在哪个生命周期

放在mounted里,整个渲染完成,DOM也加载完成

11.如何将组件所有的props传递给子组件??

12.如何自己实现v-model

官方有说到,v-model的原理其实是背后有两个操作:

????????v-bind绑定value属性的值;

????????v-on绑定input事件监听到函数中,函数会获取最新的值赋值到绑定的属性中;

13. 多个组件有相同逻辑,如何抽离

14.何时使用异步组件

  • 加载大组件
  • 路由异步加载?
  • 可以优化性能

15.何时使用keep-alive

  • 组件缓存,不需要重复渲染
  • 如多个静态tab页的切换
  • 可以优化性能

17.何时需要使用beforeDestory

不解绑自定义事件会造成内存泄漏

自定义DOM事件,即自己添加的addEventListener事件

?18.什么是作用域插槽

有时候我们希望插槽可以访问到子组件中的内容是非常重要的:

? ? ? ? 当一个组件被用来渲染一个数组元素时,我们使用插槽,并且希望插槽中没有显示每项的内容;

? ? ? ? 这个Vue给我们提供了作用域插槽;

我们来看下面的一个案例:

?p1.在App.vue中定义好数据

?p2.传递给ShowNames组件中

?p3.ShowNames组件中遍历names数据

?p4.定义插槽的prop

?p5.通过v-slot:default的方式获取到slot的props

?p6.使用slotProps中的item和index

?19.Vuex中的action和mutation的区别?

?更改 Vuex 的 store 中的状态的唯一方法是提交 mutation:

mutation一条重要的原则就是要记住 mutation 必须是同步函数

? ? ? ? 这是因为devtool工具会记录mutation的日记;

? ? ? ? 每一条mutation被记录,devtools都需要捕捉到前一状态和后一状态的快照;

? ? ? ? 但是在mutation中执行异步操作,就无法追踪到数据的变化;

? ? ? ? 所以Vuex的重要原则中要求 mutation必须是同步函数;

Action类似于mutation,不同在于:

????????Action提交的是mutation,而不是直接变更状态;(mutation里是直接更改state状态)

????????Action可以包含任意异步操作;(mutation里不允许异步操作)

?20.Vue-router常用的路由模式

21.如何配置Vue-router异步加载?

?22.请用vnode描述一个DOM结构

包含三部分:标签tag,附着在标签上的属性、样式、事件props,子元素children

23.监听data变化的核心API是什么

?24.vue如何监听数组变化

25.diff算法的时间复杂度

O(n)

在O(O^3)的基础上做了些调整

26.简述diff算法的过程

27.vue为何是异步渲染$nextTick作用

?28.vue常见性能优化方式

Vue 项目性能优化 — 实践指南(网上最全 / 详细)

不需要重复渲染的地方最好缓存下来?

?data深度监听,需要一次性遍历完成,层级太深,会在做响应式的时候,计算的深度比较多,递归次数比较多,造成页面卡顿

?

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-10-02 14:34:58  更:2021-10-02 14:37:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/18 22:39:54-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码