当前位置:首页 > React

react如何传递参数

2026-01-15 09:44:08React

传递 props 给子组件

在父组件中通过属性名直接传递数据,子组件通过 props 对象接收。例如父组件传递 nameage

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

子组件通过解构或直接访问 props 使用:

function ChildComponent({ name, age }) {
  return <div>{name} is {age} years old</div>;
}

使用 context 跨层级传递

通过 React.createContext 创建上下文,Provider 提供数据,ConsumeruseContext 消费数据。创建上下文:

const UserContext = React.createContext();

在父组件用 Provider 包裹并传递值:

<UserContext.Provider value={{ user: "Alice" }}>
  <ChildComponent />
</UserContext.Provider>

子组件通过 useContext 获取:

const { user } = useContext(UserContext);

通过路由传递参数

使用 react-router-dom 时,可通过 URL 参数或状态传递。动态路由匹配参数:

<Route path="/user/:id" component={UserPage} />

在目标组件中通过 useParams 获取:

const { id } = useParams();

通过 Linkstate 传递状态:

<Link to="/profile" state={{ fromHome: true }}>Profile</Link>

目标组件用 useLocation 接收:

const { state } = useLocation();

回调函数传递数据

父组件定义回调,子组件调用并传参。父组件定义并传递回调:

function Parent() {
  const handleData = (data) => console.log(data);
  return <Child onData={handleData} />;
}

子组件触发回调:

function Child({ onData }) {
  return <button onClick={() => onData("Hello")}>Send</button>;
}

使用状态管理库

如 Redux 或 MobX 全局管理状态。Redux 中通过 useSelector 获取状态,useDispatch 触发更新:

react如何传递参数

const count = useSelector(state => state.counter);
const dispatch = useDispatch();
dispatch(increment());

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

相关文章

react native如何

react native如何

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

react如何实现录音

react如何实现录音

使用React实现录音功能 在React中实现录音功能通常需要借助浏览器的MediaRecorder API。以下是实现步骤: 获取用户麦克风权限 需要请求用户授权访问麦克风设备,使用navigat…

react router如何使用

react router如何使用

React Router 的基本使用 安装 React Router 库,使用 npm 或 yarn 进行安装: npm install react-router-dom 配置路由 在应用的入口文件…

如何优化react性能

如何优化react性能

使用React.memo和useMemo React.memo用于优化函数组件的渲染性能,通过记忆组件渲染结果避免不必要的重新渲染。useMemo用于记忆计算结果,避免在每次渲染时重复计算。 con…

react如何实现keepalive

react如何实现keepalive

React 实现 KeepAlive 的方法 React 本身没有内置的 KeepAlive 组件,但可以通过以下方式模拟类似功能,实现组件状态保持或避免重复渲染。 使用 CSS 隐藏组件 通过 C…

vue实现参数的接受

vue实现参数的接受

Vue 参数接收的实现方式 在 Vue 中接收参数通常涉及路由参数、组件 props 或状态管理(如 Vuex/Pinia)。以下是常见场景的具体实现方法: 路由参数接收 适用于通过 URL 传递参…