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

如何在React Redux函数中传递动态company参数

React Redux中为getAllEntities函数的company字段传递动态值

当前代码里getAllEntities的company字段被硬编码为'tcs',以下是几种实现动态传递的方案:

方案1:让getAllEntities接收company参数

直接修改函数,接收外部传入的company值:

const getAllEntities = (company) => {
  dispatch(
    getEntities({
      page: paginationState.activePage - 1,
      size: paginationState.itemsPerPage,
      sort: `${paginationState.sort},${paginationState.order}`,
      company: company,
    })
  );
};

// 调用示例:
// getAllEntities('infosys');
// getAllEntities('accenture');

方案2:使用组件本地状态或props中的company值

如果company值来自组件本地状态或父组件props,直接引用即可:

// 假设组件内有本地状态:const [company, setCompany] = useState('tcs');
// 或来自props:const { company } = props;

const getAllEntities = () => {
  dispatch(
    getEntities({
      page: paginationState.activePage - 1,
      size: paginationState.itemsPerPage,
      sort: `${paginationState.sort},${paginationState.order}`,
      company: company,
    })
  );
};

方案3:从Redux Store中获取company值

如果company值存储在Redux的其他状态切片(比如用户信息)里,用useSelector读取:

import { useSelector } from 'react-redux';

// 从store中读取company值
const userCompany = useSelector(state => state.user.company);

const getAllEntities = () => {
  dispatch(
    getEntities({
      page: paginationState.activePage - 1,
      size: paginationState.itemsPerPage,
      sort: `${paginationState.sort},${paginationState.order}`,
      company: userCompany,
    })
  );
};

注:确保IQueryParams类型定义中company字段的类型符合使用场景(比如字符串类型),当前代码里的getEntities异步Thunk已经支持接收该参数,无需额外修改。

内容的提问来源于stack exchange,提问作者Prisha Yadav

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 06:25:10