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

React Table分页组件Props参数名冲突问题的解决方法咨询

解决React Table分页组件的「Argument name clash」语法错误

你的问题核心是函数参数命名冲突:组件参数列表里同时声明了props和...props,同一个作用域内不允许存在同名变量,这直接触发了语法错误。另外,React组件本身仅接收单个props参数,你写两个参数的写法本身就不符合规范。

修正后的代码如下:

export const PaginationTable = ({
  fetchData,
  pageCount: controlledPageCount,
  loading,
  isPaginated = true,
  ...restProps // 将剩余属性重命名为restProps,规避命名冲突
}) => {
  // 为useMemo添加正确依赖,确保props更新时memoized值同步更新
  const columns = useMemo(() => restProps.columns, [restProps.columns])
  const data = useMemo(() => restProps.commits, [restProps.commits])

  // 后续可继续使用这些变量及restProps中的其他属性实现分页逻辑
}

关键调整说明:

  • 将组件参数改为单个对象解构,不再单独声明props参数
  • 把剩余属性收集变量从...props改为...restProps,彻底解决命名冲突问题
  • 修复useMemo的依赖数组:你之前的columns依赖为空数组,会导致columns永远不会随props更新,这是潜在的功能bug,现在已修正为对应props属性作为依赖

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 07:10:26