React组件中的TypeScript TS2339错误:'IntrinsicAttributes ...'类型中不存在属性'xyz'

时间:2017-08-17 00:41:59

标签: reactjs typescript

我正在尝试创建一个带有任何属性的简单React组件。 any的以下语法拒绝工作(<之前的意外令牌):

export class ValidatedInput extends React.Component<any, any> {...}

any替换为{},错误消失了(有人可以解释一下差异):

export class ValidatedInput extends React.Component<{}, {}> {...}

但是,现在当我在另一个文件中使用该组件时,它会抱怨我发送到组件的属性。例如:

<ValidatedInput
    entity={book}
/>

这给了我一个错误:

  

TS2339:“IntrinsicAttributes&amp;”类型中不存在属性“实体”。 IntrinsicClassAttributes'&amp; Readonly&lt; {children?:ReactNode; ...'

什么是TypeScript沮丧?有人可以帮忙吗?

提前致谢!

2 个答案:

答案 0 :(得分:1)

看起来编译器不理解您使用的是tsx语法。确认您的文件包含&#39; tsx&#39;扩展

答案 1 :(得分:0)

我之前遇到过类似的问题,首先按照@Amid 的建议验证文件类型是 .tsx。如果那不起作用。检查您是否已保存更改。就我而言,我对几个文件进行了大量更改,但没有保存我修改的所有文件,保存所有文件后错误消失了。