• vue面试题总结


    有时间整理一下面试时遇到关于vue的面试题

    1.vue的生命周期(ps:每个面试官上来都会问的一个问题 哈哈  不过你不能只说出8各阶段 ,还要说出每个阶段他们发生的变化,做了什么操作 。这才是面试官想听到的答案)

         beforeCreate (创建前) el 和data还没有被初始化 ,所以无法访问methods, data, computed等上的方法和数据

        created (创建后)实例已完成以下配置:数据观测、属性和方法的运算,watch/event事件回调,完成了data 数据的初始化,el没有

        beforeMount (挂在前) 完成了el和data 初始化,注意此时还没有挂在html到页面上

        mounted (挂载后)模板中的HTML渲染到HTML页面中

        beforeUpdate(更新前) data数据已经发生变化,但页面还没有被渲染

        updated (更新后) 页面发生数据变化

        beforeDestrioy(销毁前)   还可以用this来获取实例,一般在这一步做一些重置的操作,比如清除掉组件中的定时器 和 监听的dom事件

        destrioyed (销毁后)  所以的事件监听器会被移出,所有的子实例也会被销毁,该钩子在服务器端渲染期间不被调用  

    2.vuex用过吗?由哪几部分组成?各部分怎么用的 详细说一下

    3.vuex存储的数据一刷新就回没有,你是如何解决的?

    4.vue-router的导航钩子有哪几种?

    5.组件之间的传值实现方式?

    6.vue项目首页加载过慢如何解决?

    7.vue中为什么data是一个函数而不是一个对象?

          这个问题面试官主要考的一个点是:引用数据类型的了解。object是引用数据类型,如果不用function返回,当共用一个组件的时候,某一个引用组件数据改变时,另一个引用组件也会随之改变,这不是我们期望发生的,所以用函数的形式定义这样每复用一次组件,就回返回新的data,类似于每个组件创建一个私有的数据空间,让各个组件实例维护各自的数据。

    8.vue项目中有没有遇到过更改数据后,页面没有更改的问题?如何解决的?

          一般出现这种问题的现象是 给某一个对象添加属性或者删除  。受JavaScript 的限制,Vue 不能检测到对象的属性添加以及删除。解决方案:1我们可以用Vue.set(object, key, value) 来解决 2.还可以使用 vm.$set 实例方法,它只是全局 Vue.set 的别名

    9.项目中如何解决跨域问题的?

    10.vue项目中使用keep-alive的作用?

         keep-alive 是 Vue 内置的一个组件,可以使被包含的组件保留状态,或避免重新渲染。一般的应用场景是:在vue项目中,搜索结果列表页面,点击某个结果之后,返回回来时,如果不对结果页面进行缓存,那么返回列表页面的时候会回到初始状态,但是我们想要的结果是返回时这个页面还是之前搜索的结果列表,这时候就需要用到vue的keep-alive技术了.

    11.vue中v-for中的key的作用?

         vue组件高度复用增加Key可以标识组件的唯一性,为了更好地区别各个组件 key的作用主要是为了高效的更新虚拟DOM

    12.vue computed , watch 和 methods的区别?

    13.vue实现局部刷新组件的方法?

    14.vue双向数据绑定的原理?

    15.你在项目中遇到最难解决的问题是什么,最后怎么解决的?(ps:看个人情况)

  • 相关阅读:
    IPC——信号量
    IPC——命名管道
    IPC——匿名管道
    IPC——信号
    管道和命名管道
    Oracle业务用户密码过期问题的解决
    Oracle获取数据库中的对象创建语句
    RAC禁用DRM特性
    配置Server Side TAF
    同一环境下新建Standby RAC库
  • 原文地址:https://www.cnblogs.com/xiebeibei/p/12195782.html
Copyright © 2020-2023  润新知