React 错误:类型“void”不可分配给 React.Component 中的类型“Readonly<>”
Posted
技术标签:
【中文标题】React 错误:类型“void”不可分配给 React.Component 中的类型“Readonly<>”【英文标题】:React Error: Type 'void' is not assignable to type 'Readonly<>' in React.ComponentReact 错误:类型“void”不可分配给 React.Component 中的类型“Readonly<>” 【发布时间】:2020-07-24 08:50:32 【问题描述】:为什么会抛出下面的错误?
export default class DeleteModal extends React.Component<DeleteModalProps, void>
错误:
类型 'void' 不能分配给类型 'Readonly'
【问题讨论】:
但是为什么会出错? 【参考方案1】:解决方案
如果我们不需要组件中的状态,不要分配它就可以了。
React.Component<Props>
也可以设置空对象
interface State
React.Component<Props, State>
原因
-
如果你检查
React.Component
的来源index.d.ts
interface Component<P = , S = , SS = any> extends ComponentLifecycle<P, S, SS>
可以看到它被定义为空Object
-
void的Typescript文档
声明 void 类型的变量没有用,因为您只能将
null
或undefined
分配给它们
这就是该错误的原因。
【讨论】:
以上是关于React 错误:类型“void”不可分配给 React.Component 中的类型“Readonly<>”的主要内容,如果未能解决你的问题,请参考以下文章
类型 '() => void' 不可分配给类型 '() => '
分页 - 类型“void”不可分配给类型“PageEvent”
React useState 挂钩错误:“xxx”类型的参数不可分配给“SetStateAction<xx>”类型的参数
不可分配给类型 IntrinsicAttributes & IntrinsicClassAttributes React.js