框架
📄️ v-show 和 v-if 的区别
区别
📄️ 为何在 v-for 中用 key
原因
📄️ 描述 Vue 组件生命周期(包括父子组件)
包含
📄️ Vue 组件如何通讯(常见)
几种
📄️ 描述组件渲染和更新的过程
📄️ 双向数据绑定 v-model 的实现原理
大概
📄️ 对 MVVM 的理解
https://lzwdot.github.io/docs/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.github.io/docs/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 的区别
区别
📄️ 组件之间如何通讯
- 父子组件 props
📄️ JSX 本质是什么
- createElement
📄️ Context 是什么,如何应用?
- 父组件,向其下所有子孙组件传递信息
📄️ shouldComponentUpdate 用途
- 性能优化
📄️ redux 单项数据流
redux
📄️ setState 场景题
📄️ 什么是纯函数
- 返回一个新值,没有副作用(不会“偷偷”修改其他值)
📄️ React 组件生命周期
- 单个组件生命周期
📄️ Ajax 应该放在哪个生命周期
- 同 Vue
📄️ 渲染列表,为何使用 key
- 同 Vue,必须用 key,且不能使用 index 和 random
📄️ 函数组件和 class 组件区别
- 纯函数,输入 props,输出 JSX
📄️ 什么是受控组件
- 表单的值,受到 state 控制
📄️ 何时使用异步组件
- 同 Vue
📄️ 组件公共逻辑如何抽离
- 使用高阶组件 HOC
📄️ redux 如何进行异步请求
- 使用异步 action
📄️ react-router 如何配置懒加载
📄️ PureComponent 有何区别
- 实现了浅比较的 shouldComponentUpdate
📄️ React 事件和 DOM 事件的区别
- 所有事件挂载到 document(或 root 元素)上
📄️ React 性能优化
- 渲染列表是加 key
📄️ React 和 Vue 的区别
共同点
📄️ Hooks 常见问题
常见问题