天天看面筋,天天被被人面试,写了这么久项目,现在让我来面一下你(
接受审判吧!(本面试持续更新!)
React
jsx 的本质是什么(或者 jsx 编译后是什么东西)
useState 执行返回的 state 来自哪里,是如何做到在 rerender 一颗新的 jsx 树时保持之前的值,同时使用多个 useState 为什么没有被后面的 useState 覆盖(或者为什么 Hook API 不能在 if 块里使用)
setState 后 react 内部的渲染路径和逻辑,是如何做到从当前组件开始更新的(或者如何实现断点恢复的),为什么必须顶层使用 Hook API
ref 是什么时候被赋值的
useEffect 中的函数什么时候执行?什么时候需要隔离副作用?什么是副作用
如何更新 input 组件的 defaultValue?
使用了 useSelector 的组件内部做了哪些事情?
HashRouter 和 BrowserRouter 的区别和原理?StaticRouter 是做什么用的?
工具
- axios 的 transformResponse 是做什么用的?
语言
TS 如何从一个类型中剔除一个属性?如何剔除该类型中不是 Function 类型的属性?
TS private 原理?
服务端渲染
同构渲染如何理解?
React 服务端渲染是如何实现的?
Next.js 服务端渲染原理?
服务端渲染遇到 dom 操作如何处理?
seo 收录的是网站的哪些内容?
微信小程序
webview 实现的小程序优缺点?和原生小程序相比除了代码之外有什么不同?
请说出小程序登录流程、公众号 H5 登录流程、webview 内 h5 登录流程?
webview 内 h5 如何调用微信支付?
webview 实现的小程序如何实现分享页面功能?