2023年react页面初始化获取请求的生命周期有哪些哪一种更好?请给出简单代码示例
在React中,页面初始化获取请求的生命周期有两种方式:类组件中的componentDidMount和函数组件中的useEffect。
- 使用
componentDidMount的示例代码:
import React, { Component } from 'react';
import axios from 'axios';
class MyComponent extends Component {
componentDidMount() {
axios.get('https://api.example.com/data')
.then(response => {
// 处理获取到的数据
})
.catch(error => {
// 处理错误
});
}
render() {
return (
<div>
{/* 页面内容 */}
</div>
);
}
}
export default MyComponent;
在类组件中,componentDidMount生命周期方法会在组件挂载后立即调用,可以在该方法中发送请求并处理返回的数据。
- 使用
useEffect的示例代码:
import React, { useEffect } from 'react';
import axios from 'axios';
const MyComponent = () => {
useEffect(() => {
axios.get('https://api.example.com/data')
.then(response => {
// 处理获取到的数据
})
.catch(error => {
// 处理错误
});
}, []);
return (
<div>
{/* 页面内容 */}
</div>
);
}
export default MyComponent;
在函数组件中,useEffect Hook可以在组件渲染完成后执行副作用操作,通过传递一个空数组作为第二个参数,可以保证只在组件挂载完成后执行一次。
两种方式都可以实现页面初始化获取请求的需求,但是使用useEffect Hook的函数组件更加简洁和易于理解,是React官方推荐的方式
原文地址: https://www.cveoy.top/t/topic/iG8J 著作权归作者所有。请勿转载和采集!