1 - 5 题详解传送门>>>>>>>>>>>>
1. 如何在代码中判断一个 React 组件是 class component 还是 function component?
2. useRef / ref / forwardsRef 的区别是什么?
3. useRef和useState区别?
4. useEffect 的第二个参数, 传空数组和传依赖数组有什么区别?
5. 如果在 useEffect 的第一个参数中 return 了一个函数,那么第二个参数分别传空数组和传依赖数组,该函数分别是在什么时候执行?
6 - 11 题详解传送门>>>>>>>>>>>>>>>
6. 讲讲 React.memo 和 JS 的 memorize 函数的区别,useMemo是什么?
7. 怎么判断一个对象是否是 React 元素?
8. 说说对 React 中Element、Component、Node、Instance 四个概念的理解
10. React 和 Vue 在技术层面有哪些区别?
11. 如何实现 useUpdate 方法,调用时强制组件重新渲染
12 - 16 题详解传送门>>>>>>>>>>>>>>>>
12. 什么是单页应用,什么是多页应用?
13. 单页应用如何提高加载速度?
14. 什么是虚拟DOM?
15. React中的类组件和函数组件之间有什么区别?
16. 什么是高阶组件?
17 - 21 题详解传送门>>>>>>>>>>>>>>
17. constructor中super与props参数一起使用的目的是什么?
18 .什么是受控组件?
19. 什么是JSX?
20. React.PureComponent 和 React.Component 有什么区别?
21. 什么是 React?
22 - 26 题详解传送门>>>>>>>>>>>>>>>>>>>>
22. 简述下 React 的生命周期?每个生命周期都做了什么?
23. React 错误边界是什么?
24. 为什么不能直接使用 this.state 改变数据?
25. React 中如果绑定事件使用匿名函数有什么影响?
26. React 的事件代理机制是什么?
27- 32 题详解传送门>>>>>>>>>
27. React中为什么要给组件设置 key?
28. setState 之后发生了什么?
29. 在 shouldComponentUpdate 或 componentWillUpdate 中使用 setState 会发生什么?
30. react 的虚拟dom是怎么实现的?
32. 为什么React的 VM 可以提高性能?
33 - 42 题详解传送门>>>>>>>>>>>>>>>
33. React Hooks带来了什么便利?
34. 列举几个常见的 Hook?
35. 使用React Hooks有什么优势?
36. 简单介绍下React中diff算法?
37. React中,能否直接将 props 的值复制给 state?
38. React Hooks当中的useEffect是如何区分生命周期钩子的?
39. 为什么不能用数组下标来作为react组件中的key?
40. React Fiber是什么?
41. 虚拟DOM一定更快吗?
42. 不同版本的 React 都做过哪些优化?
43 - 47 题详解传送门>>>>>>>>>>>>>>
43. Fiber 为什么是 React 性能的一个飞跃?
44. React Fiber 是如何实现更新过程可控?
45. React中的路由懒加载是什么?原理是什么?
46. React有哪些性能优化的方法?
47. react中懒加载的实现原理是什么?
48 - 52 题详解传送门>>>>>>>>>>>>>
48. React 组件间怎么进行通信?
49. 说说你在React项目是如何捕获错误的?
50. 说说你对immutable的理解?如何应用在react项目中?
51. 说说react中引入css的方式有哪几种?区别?
52. state 和 props有什么区别?
53 - 59 题详解传送门>>>>>>>>>>
53. React构建组件的方式有哪些?有什么区别?
54. hooks是什么时候支持的?
55. 在react中怎么实现组件间的过渡动画?
56. 说说你对Redux的理解?其工作原理?
57. useReducer 是什么?
58. 你在React项目中是如何使用Redux的? 项目结构是如何划分的?
59. 说说React render方法的原理?在什么时候会被触发?
60 - 64 题详解传送门>>>>>>>>>>>>
60. 说说对受控组件和非受控组件的理解,以及应用场景?
61. Redux 中异步的请求怎么处理
62. Redux 状态管理器和变量挂载到 window 中有什么区别?
63. Redux中的connect有什么作用?
64. 为什么 useState 返回的是数组而不是对象?
65 - 69 题详解传送门>>>>>>>>>>
65. React Hooks 在使用上有哪些限制?
66. useEffect 与 useLayoutEffect 有什么区别?
67. React 中怎么实现状态自动保存(KeepAlive)?
68. mobx 和 redux 有什么区别?
69. 下面函数组件的输出分别是什么?
下面是一个简单的函数组件,有两个按钮:"alert"、"add"。
如果先点击"alert"按钮,再点击一次"add"按钮,那么弹窗框中的值和页面中展示value分别是什么?
js'const
const [value, setValue] = useState(1)
const log = () => {
setTimeout(() => {
alert(value)
}, 3000);
}
return (
<div>
<p>FunctionComponent</p>
<div>value: {value}</div>
<button onClick={log}>alert</button>
<button onClick={() => setValue(value + 1)}>add</button>
</div>
)
}