当前位置:首页 > React

react参数如何传递

2026-02-26 04:56:33React

组件间参数传递

父组件向子组件传递参数
通过props传递数据,父组件在子组件标签上定义属性,子组件通过this.props(类组件)或props(函数组件)接收。

// 父组件
<ChildComponent name="John" age={25} />

// 子组件(函数式)
function ChildComponent(props) {
  return <div>{props.name}, {props.age}</div>;
}

子组件向父组件传递参数
父组件通过props传递回调函数,子组件调用该函数并传入参数。

// 父组件
function handleData(data) {
  console.log(data);
}
<ChildComponent onData={handleData} />

// 子组件
<button onClick={() => props.onData("Hello")}>Send</button>

跨层级参数传递

Context API
使用React.createContext创建上下文,通过Provider传递数据,子组件通过useContextContext.Consumer获取。

react参数如何传递

const MyContext = React.createContext();
function App() {
  return (
    <MyContext.Provider value="Global Data">
      <Child />
    </MyContext.Provider>
  );
}
function Child() {
  const value = useContext(MyContext);
  return <div>{value}</div>;
}

状态管理库(Redux/Zustand)
通过全局store管理数据,组件通过useSelectorconnect获取状态。

// Redux示例
import { useSelector } from 'react-redux';
function Component() {
  const data = useSelector(state => state.data);
  return <div>{data}</div>;
}

路由参数传递

动态路由参数
通过路由配置(如React Router)传递参数,组件通过useParams获取。

react参数如何传递

// 路由配置
<Route path="/user/:id" component={User} />

// 组件内获取
const { id } = useParams();

查询字符串
通过URLSearchParamsuseLocation解析查询参数。

const location = useLocation();
const query = new URLSearchParams(location.search);
const name = query.get('name');

特殊场景参数传递

Ref传递
使用forwardRef转发ref到子组件,直接访问DOM或组件实例。

const Child = forwardRef((props, ref) => {
  return <input ref={ref} />;
});

function Parent() {
  const inputRef = useRef();
  return <Child ref={inputRef} />;
}

事件总线(Event Emitter)
通过自定义事件实现非父子组件通信,需谨慎使用以避免维护问题。

// 事件发布
eventEmitter.emit('event', data);

// 事件订阅
useEffect(() => {
  eventEmitter.on('event', handleEvent);
  return () => eventEmitter.off('event', handleEvent);
}, []);

标签: 参数react
分享给朋友:

相关文章

react 如何执行

react 如何执行

安装 Node.js 和 npm React 开发需要 Node.js 环境,因为它提供了 npm(或 yarn)包管理工具。从 Node.js 官网 下载并安装最新 LTS 版本。安装完成后,在终端…

如何启动react

如何启动react

安装Node.js 确保系统已安装Node.js(建议使用LTS版本),可通过官网下载并安装。安装完成后,在终端运行以下命令验证版本: node -v npm -v 创建React项目 使用官方工具…

react如何debugger

react如何debugger

调试 React 应用的方法 使用浏览器开发者工具进行调试 React 开发者工具(React DevTools)是调试 React 应用的必备工具。安装 Chrome 或 Firefox 扩展后,可…

如何清洁react

如何清洁react

清洁 React 项目的方法 删除未使用的依赖项 运行 npm ls 或 yarn list 检查已安装的依赖项,使用 npm uninstall <package> 或 yarn rem…

react native如何

react native如何

React Native 基础知识 React Native 是一个由 Facebook 开发的框架,用于使用 JavaScript 和 React 构建跨平台移动应用。它允许开发者编写一次代码,同时…

如何设计react组件

如何设计react组件

设计 React 组件的核心原则 React 组件的设计需要遵循高内聚、低耦合的原则,确保组件功能独立且易于维护。组件的设计可以分为展示组件和容器组件两类,展示组件负责 UI 渲染,容器组件负责逻辑处…