类型错误中缺少属性

IT技术 reactjs typescript
2021-05-01 17:45:19

我在处理演示 React 项目时遇到问题。大多数问题源于我试图在他们使用 Javascript 的 Typescript 中实现它。这个要点是我的 app.tsx 文件。

https://gist.github.com/jjuel/59eed01cccca0a7b4f486181f2a14c6c

当我运行它时,我收到与界面有关的错误。

./app/app.tsx (38,17) 中的错误:错误 TS2324:在类型“IntrinsicAttributes & IntrinsicClassAttributes & AppProps & { children?: ReactElement |...”中缺少属性“humans”。

./app/app.tsx (38,17) 中的错误:错误 TS2324:“IntrinsicAttributes & IntrinsicClassAttributes & AppProps & { children?: ReactElement |...”类型中缺少属性“stores”。webpack:捆绑现在有效。

我不知道这是怎么回事。有谁知道我的问题可能是什么?谢谢!

1个回答

您有以下界面:

interface AppProps {
    humans: any;
    stores: any;
}

你是说App必须传入humansstores但是要初始化它<App />ReactDOM.render(<App />, document.getElementById('main')); 没有属性这是 TypeScript 为您提供有关您所说的意图使用的错误。这是一个错误,就像有一个带参数的函数但调用它而不传递任何参数。

使固定

也许这些属性对您来说可选的?如果是这样声明它:

interface AppProps {
    humans?: any;
    stores?: any;
}

否则提供它们,例如<App humans={123} stores={123} />(人和商店的示例实例)。