Vue面试题-答案、例子

news2024/11/24 19:49:14

1、Vue的生命周期

        每一个vue实例从创建到销毁的过程,就是这个vue实例的生命周期。在这个过程中,他经历了从开始创建、初始化数据、编译模板、挂载Dom、渲染→更新→渲染、卸载等一系列过程。

将要创建 ===>调用beforeCreate函数
创建完毕 ===>调用created函数
将要挂载 ===>调用beforeMount函数
挂载完毕 ===>调用mounted函数
将要更新 ===>调用beforeUpdate函数
更新完毕 ===>调用updated函数
将要销毁 ===>调用beforeDestory函数
销毁完毕 ===>调用destroyed函数


2、第一次页面加载会触发哪几个钩子?

        第一次页面加载时会触发 beforeCreate, created, beforeMount, mounted 这几个钩子


3、DOM 渲染在 哪个周期中就已经完成?

        DOM 渲染在 mounted 中就已经完成了。

4、简单描述每个周期具体适合哪些场景

        beforecreate : 可以在这加个loading事件,在加载实例时触发
        created : 初始化完成时的事件写在这⾥,如在这结束loading事件,异步请求也适宜在这⾥调⽤
        mounted : 挂载元素,获取到DOM节点
        updated : 如果对数据统⼀处理,在这⾥写上相应函数
        beforeDestroy : 可以做⼀个确认停⽌事件的确认框
        nextTick : 更新数据后⽴即操作dom


5、组件之间是怎么通信的

        组件之间通信主要分为三种:父子传参,子父传参,兄弟传参。

        父子传参:父组件通过自定义属性的方式传参,通过props属性给子组件传参,子组件通过props属性去接收参数。

        子:progress

        父页面引用:

        在父组件中定义

        在方法里赋值,然后以StepInfo参数,传递到组件中,进而铺数据到页面中


        子父传参:子组件通过自定义事件的方式传参,通过$emit去进行传参。

        父类页面:

        子:

        这样,在父页面handleSubmit这个方法中,e中就会得到组件中的result的值

         组件和组件通信

6、Vue.cli中怎样使用自定义的组件?

  1. 在 components 目录新建组件文件
  2. 在需要用到的页面import中导入
  3. 使用component注册
  4. 在 template 视图中使用组件标签

7、v-if 和 v-show 区别

        v-if 是“真正”的条件渲染,因为它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。

v-if 也是惰性的:如果在初始渲染时条件为假,则什么也不做,直到条件第一次变为真时,才会开始渲染条件块。

相比之下,v-show 就简单得多,不管初始条件是什么,元素总是会被渲染,并且只是简单地基于 CSS 进行切换,来控制元素的显示和隐藏。

根据应用场景选择

  • v-if 有更高的切换开销,如果在运行时条件很少改变,则使用 v-if 较好。
  • v-show 有更高的初始渲染开销。如果需要非常频繁地切换,则使用 v-show 较好。

注意

  • 不推荐同时使用 v-if 和 v-for
  • 当 v-if 与 v-for 一起使用时,v-for 具有比 v-if 更高的优先级。

8、说出至少 4 种 vue 指令和它的用法?

  • v-if:判断是否隐藏;
  • v-for:数据循环;
  • v-bind:class:绑定一个属性;(v-bind缩写为‘ : ’)
  • v-model:实现双向绑定;
  • v-show

9、为什么避免 v-if 和 v-for 一起用?

        当 Vue 处理指令时,v-for 比 v-if 具有更高的优先级,通过v-if 移动到容器元素,不会再重复遍历列表中的每个值。取而代之的是,只检查它一次,且不会在 v-if 为否的时候运算 v-for

10、如何获取dom

        this.$refs.myPicker.show()
        在我们的vue项⽬中,难免会因为引⽤第三⽅库⽽需要操作DOM标签,vue为我们提供了ref属性。 ref 被⽤来给元素或⼦组件注册引⽤信息。引⽤信息将会注册在⽗组件的 $refs 对象上。如果在普通的 DOM 元素上使⽤,引⽤指向的就是 DOM 元素;如果⽤在⼦组件上,引⽤就指向组件实例

 this.$refs.myPicker,里面还有组件的其他属性

 

11、请说出vue.cli项⽬中src⽬录每个⽂件夹和⽂件的⽤法?
       

        api存放页面调用的接口;assets⽂件夹是放静态资源;config:系统配置文件;components是放组件;router是定义路由相关的配置;utils:存放组件;view视图;app.vue是⼀个应⽤主组件;main.js是⼊⼝⽂件;.env.development 具体的dev环境的配置信息

 

12.Vue对class绑定的方式以及选择器


active是否作用于该div元素上 由isPlaying数据来决定,为true时作用,false时不作用。

13、display:none 、 visibility:hidden 和 opacity:0 之间的区别?

三者公共点都是隐藏。不同点:

  • 一、是否占据空间。
    display:none,隐藏之后不占位置;visibility:hidden、opacity:0,隐藏后任然占据位置。
  • 二、子元素是否继承。
    display:none --- 不会被子元素继承,父元素都不存在了,子元素也不会显示出来。
    visibility:hidden --- 会被子元素继承,通过设置子元素 visibility:visible 来显示子元素。
    opacity:0 --- 会被子元素继承,但是不能设置子元素 opacity:0 来先重新显示。
  • 三、事件绑定。
    display:none 的元素都已经不存在了,因此无法触发他绑定的事件。
    visibility:hidden 不会触发他上面绑定的事件。
    opacity:0 元素上面绑定的事件时可以触发的。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

振弦采集模块复位( 重启)及恢复出厂设置

振弦采集模块复位( 重启)及恢复出厂设置 以下几种情况(或操作)可使模块产生复位动作,重新启动。 ( 1) 在模块正常工作期间,向寄存器 SYS_FUN 发送软复位指令 0x01; &…

74ls192无法正常使用。

分析与解决74ls192芯片无法在proteus中正常运行 博主最近要做电子技术课程设计,于是重新拾起了长久不用的proteus。在构建倒计时电路时,发现了一个问题: 74ls192芯片,在软件提供的时钟信号下能正常开启计时。但是在自己使用的55…

从理论到实践:MySQL性能优化和高可用架构,一次讲清

数据库系统作为IT业务系统的核心,其高可用性和容灾能力对整个业务系统的连续性和数据完整性起着至关重要的作用,是企业正常运营的基石 尤其是在性能优化与高可用架构两方面,很多从业多年的DBA限于生产环境的固定体系,往往盲人摸象…

Grafana-web使用说明

本文分别记录了: Grafana使用步骤P50 P99 min max m1_rate等指标分别是什么意思,Metrics为何不会对“吞吐量”指标记录P99 min 等聚合Metrics常用的几种记录方式(我司用了两种) 1.场景 Metrics收集日志交给Graphite(…

第九节:类和对象【三】【static、代码块、对象的打印】

目录 🥇1.什么是封装 📘1.1封装的实现 🎒2.static成员 📒2.1 再谈学生类 ​编辑 📗2.2 static修饰成员变量 2.3 static修饰成员方法 📕2.4 static成员变量初始化 🔲3. 代码块 &#x…

第四届全国中医药院校大学生程序设计竞赛 : 二进制码(Python)

文章目录题目描述输入输出样例输入 Copy样例输出 Copy代码测试题目描述 在计算机中,对于定点数有三种不同的表示方法。在本题中,假定码的长度固定为 8 位,从左往右依次编号为第 1 到 8 位,第 1 位为最高位。 x 的原码&#xff1a…

Python爬虫实战(七):某讯较真辟谣小程序爬虫

追风赶月莫停留,平芜尽处是春山。 文章目录追风赶月莫停留,平芜尽处是春山。一、准备工作二、目标分析二、接口分析url分析返回数据分析三、编写代码获取数据保存数据完整代码大四考研狗没时间更新博客了,大家勿怪,等我有学上了&a…

手把手带你搭建个人博客系统(二)

⭐️前言⭐️ 因文章篇幅较长,所以整个流程分两篇文章来完成。 🍉博客主页: 🍁【如风暖阳】🍁 🍉精品Java专栏【JavaSE】、【备战蓝桥】、【JavaEE初阶】、【MySQL】、【数据结构】 🍉欢迎点赞…

Matplotlib设置限制制作

Matplotlib自动到达要沿着图的x,y(以及3D图的情况下为z轴)轴显示的变量的最小值和最大值。但是,可以使用set_xlim()和set_ylim()函数显式设置限制。 在下图中,显示了x和y轴的自动缩放限制 - #! /usr/bin/env python #codingutf-8 import matp…

【关于Linux中----进程控制和进程替换】

文章目录一、进程创建二、进程终止2.1进程退出场景2.2进程退出方法三、进程等待3.1进程等待必要性3.2进程等待的方法3.3获取子进程status四、进程程序替换4.1替换原理4.2替换函数4.3命名理解五、总结一、进程创建 谈到创建进程,不得不提到一个函数----fork。 在li…

【Python】一个矩阵根据某一列选择大于或小于范围的数据

data_all data_all[data_all[:,3]>54201]data_all data_all[data_all[:, 3] < 54220] 上面就是根据数据的第3列&#xff0c;选取54201到54220的范围的数据&#xff1a;

单片机最小系统

单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统. 对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路. 下面给出一个51单片机的最小系统电路图. 晶振电路&#xff1a; 单片机里都有晶振&#xff0c;在单片机系统里晶振作用…

2013年第四届C/C++ A组蓝桥杯省赛真题+解析+代码

目录 第一题&#xff1a;高斯日记 题目描述 思路分析 AC代码 第二题&#xff1a;排它平方数 题目描述 思路分析 AC代码 第三题&#xff1a;振兴中华 题目描述 思路分析 AC代码 第四题&#xff1a;颠倒的价牌 题目描述 思路分析 AC代码 第五题&#xff1a;前缀…

jsp就业管理系统Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 JSP 就业管理系统 是一套完善的web设计系统&#xff0c;对理解JSP java编程开发语言有帮助&#xff0c;系统具有完整的源代码和数据库&#xff0c;系统主要采用B/S模式开发。开发环境为TOMCAT7.0,Myeclipse8.5开 发&#xff0c;数据库为Mysql&#xff0c;使用ja…

蓝桥杯备赛(三)

目录 前言&#xff1a; 一、门牌制作 解析&#xff1a; 代码实现 二、寻找2020 解析&#xff1a; 代码实现 三、蛇形填数 解析&#xff1a; 代码实现 四、成绩分析 解析&#xff1a; 代码实现 五、单词分析 解析&#xff1a; 代码实现 小结&#xff1a; 前言&am…

热门Java开发工具IDEA入门指南——了解并学习IDE

IntelliJ IDEA&#xff0c;是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的java开发工具&#xff0c;尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能可以说是超常的。 本…

面试了1个月连续失败4次,自动化测试真没想象的那么简单

我干测试6年了&#xff0c;最近面试又碰壁了… 这大概是我这一个月来第4次面试失败了&#xff0c;起初我投简历比较勇猛&#xff0c;奔着薪资高的有点儿名气的企业就开始海投&#xff0c;碰上了2家还不错的邀约面试&#xff0c;前面交流还行&#xff0c;一问到自动化测试就傻眼…

怎么进行视频恢复?推荐使用这4种方法

电脑视频怎么恢复&#xff1f;很多朋友在使用电脑的过程中&#xff0c;如果系统或者是存储文件出现问题的话&#xff0c;可能会出现视频丢失的情况。因为在使用电脑运行视频软件时&#xff0c;系统或者存储文件存在一些质量问题从而导致视频丢失。那么想要进行视频恢复&#xf…

【Leetcode】拿捏链表(一)——206.反转链表、203.移除链表元素

作者&#xff1a;一个喜欢猫咪的的程序员 专栏&#xff1a;《Leetcode》 喜欢的话&#xff1a;世间因为少年的挺身而出&#xff0c;而更加瑰丽。 ——《人民日报》 目录 206.反转链表 203.移除链表元素 206.反转链表 力扣https://leetcode…

“工程化”对于大型数据平台而言,意味着什么?StartDT Hackathon来了

日前&#xff0c;2022 第三季 StartDT Hackathon 正式落下帷幕&#xff0c;以“产品工程化与可扩展性提升”为主题&#xff0c;主攻数据云这个“庞然大物”的工程化难题。 本届黑客松共吸引到 9 组参赛&#xff0c;均在 72 小时内完成项目并提测通过。有“单排孤勇者”&#x…