You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React如何将Class类组件转换为可在Redux中使用的函数式组件?

React类组件转函数式组件实现方案

转换后的完整代码如下,完全匹配你要求的导出结构,功能和原类组件完全一致:

import { useState, useEffect } from 'react';
import axios from 'axios';

export const PostList = () => {
  // 对应原类组件的state定义
  const [info, setInfo] = useState([]);

  // 对应原类组件的componentDidMount生命周期,空依赖确保仅首次挂载执行一次
  useEffect(() => {
    axios
      .get("https://api2.binance.com/api/v3/ticker/24hr")
      .then((response) => {
        setInfo(response.data);
        console.log(response.data);
      });
  }, []);

  return (
    <div>
      <h2>post!</h2>
      {info.map((user) => (
        <div key={user.symbol}>
          <h6>{user.priceChange}</h6>
        </div>
      ))}
    </div>
  );
}

核心替换逻辑说明:

  • 使用React内置的useState Hook替代类组件构造函数中的state声明,无需继承Component类
  • 使用useEffect Hook配合空依赖数组,实现和类组件componentDidMount完全相同的执行时机
  • 函数组件无需单独声明render方法,直接返回JSX结构即可,渲染逻辑和原类组件完全对齐

内容的提问来源于stack exchange,提问作者user13695929

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 20:45:07