haizlin / fe-interview

前端面试每日 3+1,以面试题来驱动学习,提倡每日学习与思考,每天进步一点!每天早上5点纯手工发布面试题(死磕自己,愉悦大家),6000+道前端面试题全面覆盖,HTML/CSS/JavaScript/Vue/React/Nodejs/TypeScript/ECMAScritpt/Webpack/Jquery/小程序/软技能……
http://www.h-camel.com
MIT License
25.41k stars 3.26k forks source link

[react] 请描述下你对react的新特性Hooks的理解?它有哪些应用场景? #702

Open wwwind213 opened 5 years ago

wwwind213 commented 5 years ago

[react] 请描述下你对react的新特性Hooks的理解?它有哪些应用场景?

zhaofeipeter commented 4 years ago

在 React 中使用 class 继承 React.Component,就可以在类里面使用各种各样的钩子函数,比如 componentWillMount、componentDidMount、componentWillUnmount 等。

你也可以直接写 function 来构建 reander 方法,但是就无法使用钩子函数,无法使用 setState 修改状态。 在 React 16 版本之后新增了 hooks 特性,hooks 特性的主要表现形式为:在 React 中可以直接使用函数的形式来完成所有组件逻辑。

应用场景 1.修改数据状态: useState 2.执行 DOM 挂载或者更新之后的事务 :useEffect 3.共享数据,跨组件传值:useContext

  1. 复杂的状态管理:useReducer
vkboo commented 3 years ago