核心概念與虛擬DOM
- React的虛擬DOM如何工作?Diff算法優化策略是什么?
- JSX的本質是什么?與模板引擎(如Vue)有何區別?
- React組件生命周期(類組件)的關鍵階段是什么?
- 受控組件與非受控組件的區別及適用場景?
- 為什么React強調“單向數據流”?
Hooks深度
useEffect
的依賴數組如何控制副作用執行?- 為什么Hooks必須遵循“調用順序一致性”規則?
useMemo
和useCallback
的區別與使用場景?- 如何用
useReducer
替代復雜的狀態邏輯? useRef
的常見用途(DOM引用、持久化值)?useLayoutEffect
與useEffect
的執行時機差異?- 如何避免Hooks中的閉包陷阱?
React 18+新特性
- 并發模式(Concurrent Mode)解決了什么問題?
useTransition
和useDeferredValue
的作用與區別?- React Server Components(RSC)的核心優勢是什么?
- Suspense組件的應用場景及工作原理?
- 自動批處理(Automatic Batching)如何優化渲染性能?
- 流式渲染(Streaming SSR)的實現原理?
狀態管理
- Context API適合哪些場景?如何避免重復渲染?
- Redux Toolkit相比原生Redux有哪些改進?
- Zustand和Recoil的輕量級狀態管理方案有何優勢?
- 如何實現跨組件樹的全局狀態共享?
- Redux中間件(如Thunk/Saga)的工作原理?
性能優化
- React.memo與PureComponent的區別及使用場景?
- 如何定位React應用性能瓶頸?常用工具有哪些?
- 虛擬化列表(如react-window)如何優化長列表渲染?
- 代碼拆分的實現方式(動態import、React.lazy)?
- 如何避免不必要的子組件重渲染?
高級模式與設計
- 高階組件(HOC)的典型應用場景及局限性?
- Render Props模式如何實現邏輯復用?
- 組合(Composition)與繼承(Inheritance)在React中的實踐?
- React Portal的應用場景(模態框、全局彈窗)?
- 如何設計可復用的自定義Hook?
實戰場景
- 如何實現表單的復雜校驗與提交(react-hook-form)?
- 如何集成第三方圖表庫(如Echarts)并避免內存泄漏?
- 如何實現路由懶加載與權限控制(React Router v6)?
- 如何優化首屏加載時間(SSR/SSG)?
- 如何處理全局錯誤(Error Boundary)與異常監控?
測試與調試
- 如何用React Testing Library測試組件交互?
- 如何模擬用戶事件(點擊、輸入)進行端到端測試?
- React DevTools的Profiler工具如何使用?
- 如何調試Hooks的狀態更新問題?
生態系統與架構
- Next.js中SSR與SSG的實現原理及選型建議?
- 如何在React中集成GraphQL(Apollo Client/React Query)?
- 微前端架構下React應用的模塊化設計?
- React Native與React核心的異同點?
前沿與未來趨勢
- React Server Components與傳統SSR的區別?
- 如何利用React的并發特性優化用戶體驗?
- React在WebAssembly中的應用可能性?
- 2025年React生態可能有哪些重大變化?