类型'{}'不能分配给类型'内部属性&下拉属性&道具&

我正在使用Reaction on Rails|WebPackaer|TypeScrip:"^2.8.1"。

我有一个高阶组件,它取一个组件,注入几个道具,然后返回:

export type HCProps = {
  isValid: boolean,
};

然后我有一个组件,它从高阶组件获得注入的道具:

import injector, { HCProps } from './HCComponent';
type Props = {};

const LocalComponent: React.SFC<Props & HCProps> = ({ isValid }) => (

);

export default injector(LocalComponent);

此处LocalComponent在将其呈现为组件时不接受任何道具,如DOM属性,但道具是通过HCComponent

注入的
<LocalComponent />

这给出了错误:

Type '{}' is not assignable to type 'IntrinsicAttributes & HCProps & Props & { children?: ReactNode; }'.
Type '{}' is not assignable to type 'HCProps'.
Property 'isValid' is missing in type '{}'.

知道为什么会发生这种情况吗?我刚开始打字。


解决方案

我假设您说的是错误的

LocalComponent在呈现时不接受任何道具

您可能正在呈现默认导出的组件injector(LocalComponent)

在这种情况下,您使用的是注射器提供给您的组件。注入器中应该有一个泛型类型,您应该使用类似

的内容
injector<HCProps>(LocalComponent)

相关文章