Typescript 类型';{数据:number;}';不可分配给类型';(对象:任何)=>;任何';打字脚本错误

Typescript 类型';{数据:number;}';不可分配给类型';(对象:任何)=>;任何';打字脚本错误,typescript,typescript-generics,Typescript,Typescript Generics,我有一个名为newstore的对象,它需要一个名为state的参数,该参数接受一个状态列表 我的问题是如何实现国有资产的接口 这就是我的错误 问题 Type'{data:number;}'不可分配给Type'(obj:any)=>any'。 如果有人能帮助我配置适合属性状态:{count:1} store.ts constcreatestore=()=>newstore({ 声明:{ 计数:1 }, }) IStoreOptions.ts 导出接口选项{ 状态:(对象:T)=>T } St

我有一个名为
newstore
的对象,它需要一个名为
state
的参数,该参数接受一个状态列表

我的问题是如何实现国有资产的接口

这就是我的错误

问题

Type'{data:number;}'不可分配给Type'(obj:any)=>any'。
如果有人能帮助我配置适合属性
状态:{count:1}

store.ts

constcreatestore=()=>newstore({
声明:{
计数:1
},
})
IStoreOptions.ts

导出接口选项{
状态:(对象:T)=>T
}
Store.ts

导出类存储{
国家:任何;
构造函数(选项:IStoreOptions){
if(options.state){
让state=options.state;
}
}
}
接口将
状态定义为
(obj:T)=>T
。这表示一个函数,该函数接受泛型类型
T obj
参数并返回泛型类型
T

尝试将
IStoreOptions
定义为

export interface IStoreOptions<T> {
  state: T
}
导出接口选项{
州:T
}

请注意,给定此解决方案,如果
T
any
,则
IStoreOptions的实现类可以根据需要将
T
设置为任何类型。它不必将
状态
定义为
任何

什么是
存储
类以及它如何使用
IStoreOptions
?@AlexWayne,我刚刚添加了存储类awesome,函数转换几乎就是问题所在。我唯一关心的是将其更改为
object
,它违背了拥有泛型的目的…这取决于您希望如何实现“状态列表”。