我的编程空间,编程开发者的网络收藏夹
学习永远不晚

react中使用hook有哪些好处

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

react中使用hook有哪些好处

今天小编给大家分享一下react中使用hook有哪些好处的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

react中使用hook的好处:1、简化逻辑复用,能更容易复用代码,Hook让开发者可以在无需修改组件结构的情况下复用状态逻辑;2、Hook能够让针对同一个业务逻辑的代码聚合在一块,让业务逻辑清晰地隔离开,让代码更加容易理解和维护。

react中使用hook有哪些好处

本教程操作环境:Windows7系统、react17.0.1版、Dell G3电脑。

Hook是React 16.8新增的特性,专门用在函数式组件,它可以代替class组件中react的其他特性,是实际工作中要常用到的。

什么是 Hooks

Hooks 译为钩子,Hooks 就是在函数组件内,负责钩进外部功能的函数。

React 提供了一些常用钩子,React 也支持自定义钩子,这些钩子都是用于为函数引入外部功能。

当我们在组件中,需要引入外部功能时,就可以使用 React 提供的钩子,或者自定义钩子。

比如在组件内引入可管理 state 的功能,就可以使用 useState 函数,下文会详细介绍 useState 的用法。

为什么要用 Hooks(使用hook的好处)

使用 Hooks 有 2 大原因:

  • 简化逻辑复用;

  • 让复杂组件更易理解。

1. 简化逻辑复用,能更容易复用代码

在 Hooks 出现之前,React 必须借用高阶组件、render props 等复杂的设计模式才能实现逻辑的复用,但是高阶组件会产生冗余的组件节点,让调试更加复杂。

Hooks 让我们可以在无需修改组件结构的情况下复用状态逻辑。

举个例子,经常使用的antd-table,用的时候经常需要维护一些状态 ,并在合适的时机去更改它们:

componentDidMount(){
 this.loadData();
}
loadData = ()=>{
   this.setState({
     current: xxx,
     total: xxx,
     pageSize: xxx,
     dataSource: xxx[]
   })
}
onTableChange = ()=>{
   this.setState({
     current: xxx,
     total: xxx,
     pageSize: xxx,
   })
}
render(){
 const {total,pageSize,current,dataSource} = this.state;
 return <Table
  dataSource={dataSource}
  pagination={{total,pageSize,current}
  onChange={this.onTableChange}
 />
}

每个table都要写一些这种逻辑,那还有啥时间去摸鱼。这些高度类似的逻辑,可以通过封装一个高阶组件来抽象它们。这个高阶组件自带这些状态,并可以自动调用server去获取remote data。

用高阶组件来实现的话会是这样:

import { Table } from 'antd'
import server from './api'
function useTable(server) {
  return function (WrappedComponent) {
    return class HighComponent extends React.Component {
      state = {
        tableProps: xxx, 
      };
      render() {
        const { tableProps } = this.state;
        return <WrappedComponent tableProps={tableProps} />;
      }
    };
  };
}
@useTable(server)
class App extends Component{
  render(){
    const { tableProps } = this.props;
    return (
      <Table 
        columns={[...]}
      // tableProps包含pagination, onChange, dataSource等属性。
        {...tableProps}
      />
    )
  }
}

如果用hooks来实现的话,会是:

import { Table } from 'antd'
import server from './api'
function useTable(server) {
  const [tableProps, setTableProps] = useState(xxx);
  return tableProps;
}
function App {
    const { tableProps } = useTable();
    return (
      <Table 
        columns={[...]}
      // tableProps包含pagination, onChange, dataSource等属性
        {...tableProps}
      />
    )
}

可以看到,hooks的逻辑更清晰,可读性更好。

2. 让复杂组件更易理解

在 class 组件中,同一个业务逻辑的代码分散在组件的不同生命周期函数中,而 Hooks 能够让针对同一个业务逻辑的代码聚合在一块,让业务逻辑清晰地隔离开,让代码更加容易理解和维护。

以上就是“react中使用hook有哪些好处”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

react中使用hook有哪些好处

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

React中常用的Hook有哪些

这篇文章主要介绍了reacthooks实现原理,文中给大家介绍了useStatedispatch函数如何与其使用的FunctionComponent进行绑定,节后实例代码给大家介绍的非常详细,需要的朋友可以参考下
2023-01-10

使用WCF好处有哪些

这篇文章主要为大家展示了“使用WCF好处有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“使用WCF好处有哪些”这篇文章吧。在Windows平台下,尤其是在.NET平台下开发面向服务的应用程序
2023-06-17

使用wordpress有哪些好处

本篇内容介绍了“使用wordpress有哪些好处”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!好处:1、易于使
2023-02-09

使用dedecms有哪些好处

这篇文章主要介绍“使用dedecms有哪些好处”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“使用dedecms有哪些好处”文章能帮助大家解决问题。用dedecMS建站的
2023-02-17

使用Javabean的好处有哪些

这篇文章将为大家详细讲解有关使用Javabean的好处有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、 javabean 是什么?Bean的中文含义是“豆子”,顾名思义,JavaBe
2023-05-31

使用PHP SDK有哪些好处

这篇文章主要讲解了“使用PHP SDK有哪些好处”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“使用PHP SDK有哪些好处”吧!PHP SDK(Software Development Ki
2023-07-05

使用restapi的好处有哪些

使用REST API的好处有以下几点:1. 简单易用:REST API使用HTTP协议作为通信协议,可通过HTTP请求(如GET、POST、PUT、DELETE等)来访问和操作资源,非常简单易用。2. 平台无关性:由于REST API使用标
2023-10-19

使用linq的好处有哪些

简洁而优雅的语法:LINQ 提供了一种统一的方式来查询各种数据源,包括对象、集合、数据库和 XML。它的语法非常简洁明了,让代码更易读、易维护。类型安全:LINQ 是基于强类型的,它提供了静态类型检查,可以在编译时捕获潜在的错误,避免在运行
使用linq的好处有哪些
2024-03-11

https中使用//代替http://有哪些好处

这篇文章主要为大家展示了“https中使用//代替http://有哪些好处”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“https中使用//代替http://有哪些好处”这篇文章吧。//缺省协议
2023-06-08

使用Spring框架有哪些好处

这篇文章主要介绍“使用Spring框架有哪些好处”,在日常操作中,相信很多人在使用Spring框架有哪些好处问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”使用Spring框架有哪些好处”的疑惑有所帮助!接下来
2023-06-02

使用数据库有哪些好处

使用数据库有以下几个好处:1. 数据集中存储:数据库可以将数据集中存储在一个地方,方便管理和维护。数据存储在数据库中,可以避免数据分散在多个文件或应用程序中,提高数据的组织性和一致性。2. 数据共享和访问控制:数据库可以提供统一的数据访问接
2023-10-09

使用CDN对SEO有哪些好处

加快网站加载速度:CDN能够将网站的静态内容缓存至全球各地的服务器,当用户访问网站时,可以从离用户最近的服务器获取内容,从而减少加载时间,提升用户体验。提升网站可靠性和稳定性:通过分布式计算和负载均衡,CDN能够提高网站的稳定性和可靠性,避
使用CDN对SEO有哪些好处
2024-04-24

使用shopex主机有哪些好处

1. 高性能:Shopex主机采用高性能服务器,可以提供更快的网站访问速度和更高的性能。2. 稳定性:Shopex主机采用稳定的服务器架构和技术,可以保证网站稳定运行,避免因服务器故障而导致的网站宕机。3. 安全性:Shopex主机提供安全
2023-05-31

使用Flex布局有哪些好处

使用Flex布局有以下几个好处:1. 简化布局:Flex布局是一种简洁、灵活的布局方式,通过简单的属性设置就可以实现复杂的布局效果,避免了繁琐的float和position属性的使用。2. 响应式布局:Flex布局是一种响应式的布局方式,可
2023-09-28

WordPress系统使用有哪些好处

这篇文章主要介绍“WordPress系统使用有哪些好处”,在日常操作中,相信很多人在WordPress系统使用有哪些好处问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”WordPress系统使用有哪些好处”的疑
2023-07-04

使用ssl证书有哪些好处

使用SSL证书有以下好处:1. 数据加密:SSL证书通过加密数据通信,保护信息在传输过程中不被窃取、篡改或伪造。这对于网站上的敏感信息(如信用卡号、密码等)非常重要,确保用户数据的安全性。2. 身份验证:SSL证书提供了对网站身份的验证,确
2023-08-16

编程热搜

目录