React-Typescript-useTranslation:预期参数声明。 TS1138

问题描述 投票:0回答:1

我正在为我的应用程序使用React-typescript。对于我的应用程序,我使用了useTranslation。 useTranslation在功能组件内部运行良好。我创建了在功能组件之外的经过验证的自定义错误处理程序。当我使用useTranslation逻辑时,它确实起作用并向我显示:需要参数声明。我不知道我在做什么错。

const validate = (i: IFormStateValues<IData>, t: any) => {
  const errors: IFormStateErrors<IData> = {};

  if (!i?.name) {
    errors.name = {t(`notValidLengthError`)}; //ERROR:Parameter declaration expected
  }
  return errors;
};
react-typescript
1个回答
0
投票

最简单的解决方法是传播t


const validate = (i: IFormStateValues<IData>, t: any) => {
  const errors: IFormStateErrors<IData> = {};

  if (!i?.name) {
    errors.name = {...t(`notValidLengthError`)}; //ERROR:Parameter declaration expected
  }
  return errors;
};

但是广告我不知道这是什么,我会告诉你发生了什么,打字稿,我有同样的问题

错误的属性名称由不具有任何属性的对象初始化,我假设t是一个返回值的函数,但errors.name是一个空对象。 TS那里不喜欢那样。将值设置为无属性的空对象,在何处设置新的发票值。

© www.soinside.com 2019 - 2024. All rights reserved.