vuejs 常见问题
📄️ v-show 和 v-if 的区别
区别
📄️ 为何在 v-for 中用 key
原因
📄️ 描述 Vue 组件生命周期(包括父子组件)
包含
📄️ Vue 组件如何通讯(常见)
几种
📄️ 描述组件渲染和更新的过程
📄️ 双向数据绑定 v-model 的实现原理
大概
📄️ 对 MVVM 的理解
https://lzwdot.com/blog/archives/26955
📄️ computed 有何特点
特点
📄️ 为何组件 data 必须是一个函数?
根本原因是 .vue 组件 export 出来后是一个 class 类,所以 data 必须是一个函数,否则 data 所有数据都共享了一样了
📄️ ajax 请求应该放在哪个生命周期
一般
📄️ 如何将组件所有 props 传递给子组件?
这样
📄️ 如何自己实现 v-model
参考:
📄️ 多个组件有相同的逻辑,如何抽离?
使用
📄️ 何时要使用异步组件?
何时?
📄️ 何时需要使用 keep-alive ?
一般
📄️ 何时需要使用 beforeDestory ?
生命周期
📄️ 什么是作用域插槽
参考:
📄️ Vuex 中 action 和 mutation 有何区别
Vuex
📄️ Vue-router 常用的路由模式
- hash 默认
📄️ 如何配置 Vue-router 异步加载
异步加载,也叫懒加载。示例:
📄️ 请 vnode 描述一个 DOM 结构
参考:https://lzwdot.com/blog/archives/26981/
📄️ 监听 data 变化的核心 API 是什么
核心
📄️ Vue 如何监听数组变化
监听数组
📄️ 请描述响应式原理
响应式原理
📄️ diff 算法的时间复杂度
- O(n)
📄️ 简述 diff 算法过程
- patch(elem,vnode) 和 patch(vnode,newVnode)
📄️ Vue 为何是异步渲染,$nextTick 何用?
- 异步渲染(以及合并 data 修改),以提高渲染性能
📄️ Vue 常见性能优化方式
- 合理使用 v-show 和 v-if
📄️ Vue2/Vue3 和 React 的区别
区别