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

React无状态函数组件重构后不渲染,调用方式是否与有状态组件一致?

问题分析与解决

无状态函数组件的调用方式和有状态组件完全一致,你在App类中的调用代码没有问题。

问题出在重构后的箭头函数组件上:
当箭头函数使用花括号{}包裹函数体时,必须显式使用return语句返回JSX内容。你当前的代码没有写return,导致组件默认返回undefined,React无法渲染该值,所以组件不显示,且不会抛出错误(因为返回undefined是React允许的情况)。

修正方案

有两种方式可以修复:

方式1:添加显式return

const Search = ({ value, onChange, children }) => {
  return (
    <form>
      {children} <input
        type="text"
        value={value}
        onChange={onChange}
      />
    </form>
  );
}

方式2:使用箭头函数的隐式返回

用圆括号()包裹JSX(让结构更清晰),省略花括号实现隐式返回:

const Search = ({ value, onChange, children }) => (
  <form>
    {children} <input
      type="text"
      value={value}
      onChange={onChange}
    />
  </form>
);

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 03:05:25