- Vue中key的作用
- 答:key是Vue中的唯一标记,通过这个key,diff操作可以更准确,更快速
- 为什么不建议用index作为key?
- 答:使用index作为key和没写基本上没区别,因为不管数组的顺序怎么颠倒,index都是0,1,2...这样排列,导致Vue会复用错误的子节点,做很多的额外的工作
- v-for哪个优先级更高?如果同时出现,应如何优化?
- 答:v-for的优先级大于v-if,如果在同一个dom或者组件上使用v-if,v-if会运行在v-for循环中,造成性能的浪费
- 说一下Vue3的生命周期
- 答:setup() (组件创建之前)
- onCreated()(组件创建完成后)
- OnBeforeUpdata() (组件更新之前)
- OnUpdated()(组件更新完成后)
- OnBeforeUnmount()(组件销毁之前)
- OnUnmounted()(组件销毁完成后)
- Vue 子组件和父组件执行顺序
- 答:加载渲染全过程:
- 1.父组件beforeCreate
- 2.父组件created
- 3.父组件beforeMount
- 4.子组件beforeCreate
- 5.子组件created
- 6.子组件beforeMount
- 7.子组件mounted
- 8.父组件mounted
- 更新过程:
- 1.父组件beforeUpdate
- 2.子组件beforeUpdate
- 3.字组件update
- 4.父组件update
- 销毁过程:
- 1.父组件beforeDestroy
- 2.子组件beforeDestroy
- 3.子组件destroyed
- 4.父组件destroyed
- 26. 路由的hash和history模式的区别
- 答:hash描述:使用url的hash值来构建路由,使用onhashchange事件,获取到最新的window.location.hash去匹配路由监听的url中地址,url地址中有#号,hash值不会包含在http请求中,不需要后台服务器的支持,比history兼容性好一些
- History模式:依赖HTML5的History API构建:通过history.pushState方法来完成URL跳转而无须重新加载页面,兼容性比hash略差,刷新有404问题,需要后台服务器的支持
- 27.$route 和$router 的区别
- 答:$route:是“路由信息对象”,包括path,params,hash,query,fullPath,matched,name等路由信息参数
- $router:是“路由实例”对象包括了路由的跳转方法,钩子函数等
- Vue-router 导航守卫有哪些
- 答:全局导航守卫,独享路由导航守卫,组件内导航守卫
- Vuex有哪几种属性?
- 答:1.state=>基本数据(数据源存法地)
- 2.getters=>从基本数据派生出来的数据
- 3.mutations=>提交更改数据的方法,同步
- 4.actions=>像一个装饰器,包裹mutations,使之可以异步
- 5.modules=>模块化Vuex
- 30.Vuex 和 localStorage 的区别
- 答:(1)最重要的区别
- 1.vuex存储在内存中
- 2.localstorage则以文件的方法存储在本地,只能存储字符串类型的数据,存储对象需要JSON的stringify和parse方法进行处理,读取内存比读取硬盘速度要快
- (2)应用场景
- 1.vuex是一个专为Vue.js应用程序开发的状态管理模式,他采用了集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生改变,vuex用于组件之间的传值。
- 2.localstorage是本地存储,是将数据存储到浏览器的方法,一般是在跨页面传递数据时使用。
- (3).永久性
- vuex能做到数据的响应式,localstorage不能
- 31.vue 组件通信的几种方式
- 答:三种方式
- 父子组件通信
- 兄弟组件间通信
- 任意组件之间
- 插槽分几种? 分别是什么?
- 答:默认插槽(匿名存储和后背插槽),具名插槽,作用域插槽
- call、bind、apply 的区别?
- 答:1.call和apply都是直接调用
- 2.call接收多个参数,其中第一个是this指向,从第二个开始,是原函数参数依次传入
- 3.Apply接收两个参数,第一个是this指向,第二个参数是一个原函数实参组成的数组
- 4.Bind返回一个函数
- 34.常用的数组方法?8个以上
- 答:forEach() 遍历数组返回undefined
- Map() 遍历数组返回新数组
- Pop() 尾部删除数据
- Push() 尾部添加数据
- Shift() 头部删除
- Unshift() 头部添加
- Find() 根据条件查找下标
- findIndex() 根据条件查找元素下标
- 35.Vue 中常见性能优化
- 答:1.路由懒加载
- 2.keep-alive缓存页面
- 3.使用v-show复用DOM
- 4.v-for遍历避免同时使用v-if
- 5.长列表性能优化
- 6.事件的销毁
- 7.图片懒加载
- 8.弟三方插件按需引入
- 9.无状态的组件标记为函数式组件
- 10.子组件分隔
- 11.变量本地化
vue2常见的面试题---下 !!
最新推荐文章于 2024-07-17 17:57:11 发布