我已经将react和react-dom(以及@ type / react和@ types / react-dom)升级到最新版本,以使用react钩子。但是现在我收到了此类型错误:
typeof类型的参数不能分配给type类型的参数 'ComponentType <道具和RouteComponentProps <{},StaticContext,任何>>
interface LoginProps {}
class Login extends React.PureComponent<LoginProps & RouteComponentProps, {}> {
}
export default withRouter(Login);
我怀疑类型定义是问题所在,但我找不到原因。
答案 0 :(得分:1)
我认为问题在于您尝试扩展界面的方式。
在打字稿界面中,可以使用extends
关键字(即interfaceA extends interfaceB
)进行扩展,而类型可以使用您所使用的方法(即typeA & typeB
)进行扩展。
而且由于LoginProps是一个界面,所以您的代码已损坏。
尝试将您的代码重写为
interface LoginProps extends RouteComponentProps {}
class Login extends React.PureComponent<LoginProps, {}> {
}