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

React中如何正确将props向下传递给子组件

问题原因

你当前的透传props写法完全错误:
在JSX语法中,<NavBar props /> 等价于 <NavBar props={true} />,仅向NavBar组件传递了一个名为props、值为true的属性,并未将MasterNavBar接收到的color、scrollChange等属性向下传递,因此你在NavBar中访问props.color自然返回undefined。

正确写法

方案1:全量透传所有props(最常用)

如果你需要把MasterNavBar收到的所有props都原封不动传给NavBar,直接使用JSX扩展运算符即可:

// 在MasterNavBar组件内
<NavBar {...props} />

这种写法会把MasterNavBar接收到的所有属性(包括color、scrollChange)全部透传给NavBar,你在NavBar内可以直接通过props.color、props.scrollChange正常取值。

方案2:手动指定传递的属性

如果你只需要透传部分属性,不需要把MasterNavBar收到的所有props都传下去,可以手动逐个声明:

// 在MasterNavBar组件内
<NavBar color={props.color} scrollChange={props.scrollChange} />

这种写法更可控,能避免传递不必要的冗余属性给子组件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 19:24:05