常见前端面试之VUE面试题汇总七

8060c29519cb47bd9317191de9bef2a2.jpeg

 

20. 对 vue 设计原则的理解

1.渐进式 JavaScript 框架:与其它大型框架不同的是,Vue 被设计 为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上 手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工 具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应 用提供驱动。

2.易用性:vue 提供数据响应式、声明式模板语法和基于配置的组件 系统等核心特性。这些使我们只需要关注应用的核心业务即可,只要 会写 js、html 和 css 就能轻松编写 vue 应用。

3.灵活性:渐进式框架的最大优点就是灵活性,如果应用足够小,我 们可能仅需要 vue 核心特性即可完成功能;随着应用规模不断扩大,我们才可能逐渐引入路由、状态管理、vue-cli 等库和工具,不管是 应用体积还是学习难度都是一个逐渐增加的平和曲线。

4.高效性:超快的虚拟 DOM 和 diff算法使我们的应用拥有最佳的性能 表现。追求高效的过程还在继续,vue3 中引入 Proxy 对数据响应式 改进以及编译器中对于静态内容编译的改进都会让 vue 更加高效。

21. 说一下 Vue 的生命周期

Vue 实例有⼀个完整的⽣命周期,也就是从开始创建、初始化数据、编译模版、挂载 Dom -> 渲染、更新 -> 渲染、卸载 等⼀系列过程,称这是 Vue 的⽣命周期。

1.beforeCreate(创建前):数据观测和初始化事件还未开始,此时 data 的响应式追踪、event/watcher 都还没有被设置,也就是说不 能访问到 data、computed、watch、methods 上的方法和数据。

2.created(创建后) :实例创建完成,实例上配置的 options 包 括 data、computed、watch、methods 等都配置完成,但是此时渲染 得节点还未挂载到 DOM,所以不能访问到 $el 属性。

3.beforeMount(挂载前):在挂载开始之前被调用,相关的 render 函数首次被调用。实例已完成以下的配置:编译模板,把 data 里面 的数据和模板生成 html。此时还没有挂载 html 到页面上。

4.mounted(挂载后):在 el 被新创建的 vm.$el 替换,并挂载到实 例上去之后调用。实例已完成以下的配置:用上面编译好的 html 内 容替换 el 属性指向的 DOM 对象。完成模板中的 html 渲染到 html 页 面中。此过程中进行 ajax 交互。

5.beforeUpdate(更新前):响应式数据更新时调用,此时虽然响应 式数据更新了,但是对应的真实 DOM 还没有被渲染。

6.updated(更新后) :在由于数据更改导致的虚拟 DOM 重新渲染和 打补丁之后调用。此时 DOM 已经根据响应式数据的变化更新了。调 用时,组件 DOM 已经更新,所以可以执行依赖于 DOM 的操作。然而 在大多数情况下,应该避免在此期间更改状态,因为这可能会导致更 新无限循环。该钩子在服务器端渲染期间不被调用。

7.beforeDestroy(销毁前):实例销毁之前调用。这一步,实例仍 然完全可用,this 仍能获取到实例。

8.destroyed(销毁后):实例销毁后调用,调用后,Vue 实例指示 的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例 也会被销毁。该钩子在服务端渲染期间不被调用。

另外还有 keep-alive 独有的生命周期,分别为 activated 和

deactivated。用 keep-alive 包裹的组件在切换时不会进行销毁,而 是缓存到内存中并执行 deactivated 钩子函数,命中缓存渲染后会执 行 activated 钩子函数。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/90507.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2023有哪些更好用的网页制作工具

过去,专业人员使用HTMLL、CSS、Javascript等代码手动编写和构建网站。现在有越来越多的智能网页制作工具来帮助任何人实现零代码基础,随意建立和设计网站。在本文中,我们将向您介绍2023年流行的网页制作工具。我相信一旦选择了正确的网页制作…

OpenGL —— 2.5、绘制第一个三角形(附源码,glfw+glad)(更新:纹理贴图)

源码效果 C源码 纹理图片 需下载stb_image.h这个解码图片的库,该库只有一个头文件。 具体代码: vertexShader.glsl #version 330 corelayout(location 0) in vec3 aPos; layout(location 1) in vec3 aColor; layout(location 2) in vec2 aUV;out ve…

如何搭建智能家居系统并通过内网穿透实现远程控制家中设备

文章目录 前言1. 安装Home Assistant2. 配置Home Assistant3. 安装cpolar内网穿透3.1 windows系统3.2 Linux系统3.3 macOS系统 4. 映射Home Assistant端口5. 公网访问Home Assistant6. 固定公网地址6.1 保留一个固定二级子域名6.2 配置固定二级子域名 前言 Home Assistant&…

(三)Linux中卸载docker(非常详细)

docker 卸载 使用yum安装docker 如需卸载docker可以按下面步骤操作: 1、停止docker服务 systemctl stop docker 2、查看yum安装的docker文件包 yum list installed |grep docker 3、查看docker相关的rpm源文件 rpm -qa |grep docker 4、删除所有安装的docke…

【JVM 内存结构丨栈】

栈 -- 虚拟机栈 简介定义压栈出栈局部变量表操作数栈方法调用特点作用 本地方法栈(C栈)定义栈帧变化作用对比 主页传送门:📀 传送 简介 栈是用于执行线程的内存区域,它包括局部变量和操作数栈。 Java 虚拟机栈会为每…

MySql学习4:多表查询

教程来源 黑马程序员 MySQL数据库入门到精通,从mysql安装到mysql高级、mysql优化全囊括 多表关系 各个表结构之间存在各种关联关系,基本上分为三种:一对多(多对一)、多对多、一对一 一对多(多对一&…

学习设计模式之观察者模式,但是宝可梦

前言 作者在准备秋招中,学习设计模式,做点小笔记,用宝可梦为场景举例,有错误欢迎指出。 观察者模式 观察者模式定义了一种一对多的依赖关系,一个对象的状态改变,其他所有依赖者都会接收相应的通知。 所…

常见前端面试之VUE面试题汇总八

22. Vue 子组件和父组件执行顺序 加载渲染过程: 1.父组件 beforeCreate 2.父组件 created 3.父组件 beforeMount 4.子组件 beforeCreate 5.子组件 created 6.子组件 beforeMount 7.子组件 mounted 8.父组件 mounted 更新过程: 1. 父组件 befor…

安全防护产品对接流程讲解

服务器被攻击了,怎么对接高防产品呢,需要提供什么? 1、配置转发规则:提供域名、IP、端口,由专业技术人员为您配置转发协议/转发端口/源站IP等转发规则,平台会分配该线路独享高防IP。 2、修改DNS解析&…

大数据:AI大模型对数据分析领域的颠覆(文末送书)

随着数字化时代的到来,大数据已经成为了各行各业中不可或缺的资源。然而,有效地分析和利用大数据仍然是一个挑战。在这个背景下,OpenAI推出的Code Interpreter正在对数据分析领域进行颠覆性的影响。 如何颠覆数据分析领域?带着这…

java八股文面试[JVM]——双亲委派模型

1.当AppClassLoader去加载一个class时,它首先不会自己去尝试加载这个类,而是把类加载请求委托给父加载器ExtClassLoader去完成。 2.当ExtClassLoader去加载一个class时,它首先也不会去尝试加载这个类,而是把类加载请求委托给父加载…

Module not found: Error: Can‘t resolve ‘less-loader‘解决办法

前言: 主要是在自我提升方面,感觉自己做后端还是需要继续努力,争取炮筒前后端,作为一个全栈软阿金开发人员,所以还是需要努力下,找个方面,目前是计划学会Vue,这样后端有java和pytho…

0101prox-shardingsphere-中间件

1 启动ShardingSphere-Proxy 1.1 获取 目前 ShardingSphere-Proxy 提供了 3 种获取方式: 二进制发布包DockerHelm 这里我们使用Docker安装。 1.2 使用Docker安装 step1:启动Docker容器 docker run -d \ -v /Users/gaogzhen/data/docker/shardings…

Kaniko在containerd中无特权快速构建并推送容器镜像

目录 一、kaniko是什么 二、kaniko工作原理 三、kanijo工作在Containerd上 基于serverless的考虑,我们选择了kaniko作为镜像打包工具,它是google提供了一种不需要特权就可以构建的docker镜像构建工具。 一、kaniko是什么 kaniko 是一种在容器或 Kube…

【React基础全篇】

文章目录 一、关于 React二、脚手架2.1 create-react-app 脚手架的使用2.2 项目目录解析2.3 抽离配置文件2.4 webpack 二次封装2.4.1 集成 css 预处理器2.4.2 配置解析别名 2.5 setupProxy 代理 三、JSX3.1 jsx 语法详解3.2 React.createElement 四、组件定义4.1 类组件4.2 函数…

前端需要理解的跨平台知识

混合开发是指使用多种开发模开发App的一种开发模式,涉及到两大类技术:原生 Native、Web H5。原生 Native 主要指 iOS(Objective C)、Android(Java),原生开发效率较低,开发完成需要重…

leetcode739. 每日温度 单调栈

自己思路: 想到用两个栈,一个维护元素、另一个维护下标。但是还是无法处理有重复元素的问题(用哈希表来存储的时候)。所以就看了答案的思路。 答案思路: 从前往后遍历,维护一个单调栈。栈存放数组的下标。…

【QT】绘制旋转等待

很高兴在雪易的CSDN遇见你 ,给你糖糖 欢迎大家加入雪易社区-CSDN社区云 前言 程序中经常会遇到耗时的操作,需要提供等待的窗口,防止用户多次点击造成卡顿等问题。本文分享旋转等待技术,希望对各位小伙伴有所帮助!结果如下:

36款影音娱乐-音乐、电台、直播类APP评测体验报告

为方便开发者更好地衡量APP在同类产品中的表现和竞争力,有针对性地进行产品优化,软件绿色联盟策划了垂类APP评测体验专题,目前已发布了天气、小说、教育和视频类APP评测体验报告。本期将对影音娱乐类中的音乐、电台、直播类APP围绕绿标五大标…

Unity Meta Quest MR 开发教程:(二)自定义透视 Passthrough【透视功能进阶】

文章目录 📕教程说明📕动态开启和关闭透视⭐方法一:OVRManager.instance.isInsightPassthroughEnabled⭐方法二:OVRPassthroughLayer 脚本中的 hidden 变量 📕透视风格 Passthrough Styling⭐Inspector 面板控制⭐代码…