当前位置:首页 > React

react组件如何传输值

2026-01-24 08:11:18React

父组件向子组件传值

通过 props 传递数据,父组件在子组件标签上定义属性,子组件通过 props 接收。

父组件代码示例

function ParentComponent() {
  const data = "Hello from Parent";
  return <ChildComponent message={data} />;
}

子组件代码示例

function ChildComponent(props) {
  return <div>{props.message}</div>;
}

子组件向父组件传值

通过回调函数实现。父组件传递函数给子组件,子组件调用该函数并传入参数。

父组件代码示例

function ParentComponent() {
  const handleData = (childData) => {
    console.log(childData);
  };
  return <ChildComponent onSendData={handleData} />;
}

子组件代码示例

function ChildComponent({ onSendData }) {
  const sendData = () => {
    onSendData("Data from Child");
  };
  return <button onClick={sendData}>Send Data</button>;
}

兄弟组件间传值

通过状态提升或全局状态管理(如 Context、Redux)。将共享状态定义在共同的父组件中,通过 props 传递。

共享状态的父组件代码示例

function ParentComponent() {
  const [sharedData, setSharedData] = useState("Initial Data");
  return (
    <>
      <SiblingA data={sharedData} />
      <SiblingB onUpdateData={setSharedData} />
    </>
  );
}

使用 Context API 跨层级传值

创建 Context 并包裹组件树,任意子组件可通过 useContext 获取值。

Context 定义示例

const MyContext = createContext();

function App() {
  return (
    <MyContext.Provider value={"Global Data"}>
      <ChildComponent />
    </MyContext.Provider>
  );
}

function ChildComponent() {
  const contextValue = useContext(MyContext);
  return <div>{contextValue}</div>;
}

使用 Redux 全局状态管理

通过 store 存储数据,组件通过 useSelector 读取和 useDispatch 更新状态。

Redux 示例代码

// Store 配置
const store = configureStore({
  reducer: {
    data: dataReducer,
  },
});

// 组件中使用
function Component() {
  const data = useSelector((state) => state.data);
  const dispatch = useDispatch();
  const updateData = () => dispatch({ type: "UPDATE_DATA" });
  return <button onClick={updateData}>Update</button>;
}

通过路由参数传值

使用 react-router-dom 传递 URL 参数或状态。

路由传参示例

react组件如何传输值

// 传递参数
<Link to="/user/123">User</Link>

// 接收参数
function UserPage() {
  const { id } = useParams();
  return <div>User ID: {id}</div>;
}

标签: 组件react
分享给朋友:

相关文章

如何react页面

如何react页面

创建 React 页面 使用 create-react-app 快速初始化项目: npx create-react-app my-app cd my-app npm start 基础页面结构 在 s…

如何优化react

如何优化react

优化 React 性能的方法 使用 React.memo 或 PureComponent 对于函数组件,使用 React.memo 进行记忆化,避免不必要的重新渲染。类组件可以使用 PureCompo…

react如何更新

react如何更新

更新 React 版本的方法 检查当前 React 版本 运行以下命令查看项目中安装的 React 版本: npm list react 更新 React 及相关依赖 通过 npm 或 yarn…

react如何收录

react如何收录

React 收录方法 React 的收录主要涉及搜索引擎优化(SEO)和预渲染技术。由于 React 是单页应用(SPA),默认情况下内容由 JavaScript 动态生成,可能导致搜索引擎爬虫难以收…

如何开发react

如何开发react

开发React应用的基本步骤 安装Node.js和npm 确保系统中已安装Node.js(包含npm)。可通过官网下载安装包,安装后验证版本: node -v npm -v 创建React项目…

react如何打包

react如何打包

打包 React 项目的基本步骤 React 项目通常使用 create-react-app 或类似的脚手架工具创建,这些工具内置了打包功能。以下是打包 React 项目的详细方法: 安装依赖并构建…