我有一个实用程序功能,可以在注入存储区进行类型级别检查以反应组件。
import { Omit } from 'typelevel-ts';
import * as React from 'react';
declare module 'mobx-react' {
export function inject<D>(
mapStoreToProps: (store) => D
): <A extends D>(component: React.ComponentType<A>) =>
React.SFC<Omit<A, keyof D> & Partial<D>>;
}
在最新的打字稿版本2.9.2中,我收到错误消息“类型'A'不满足约束'对象'。类型'D'无法分配给类型'对象'。”
请帮助您了解此错误以及可能的解决方法。
谢谢
答案 0 :(得分:3)
看起来Omit
要求第一个泛型是一个对象,因此,如果为D添加该约束,它应该可以工作:
export function inject<D extends object>(