Immutable-js记录[1]上的流类型错误不是多态类型

问题描述 投票:0回答:1

我在reactjs中使用immutable-js,当我使用流程进行类型检查时,出现以下错误。

无法实例化Record,因为类Record [1]不是多态类型。

 src/service/login.js
   32│
   35│ const StoreRecord: Record<LoginTypeDef> = Record({
   36│   userId: fromJS(academicYearInitialState),
   37│   userName: null,
   38│   userRole: null,
 node_modules/immutable/dist/immutable.js.flow

[[1]1395│声明类记录{

以下是我的记录初始化。

const StoreRecord:Record = Record({userId:null,userName:null,userRole:null});

LoginTypeDef导出为,导出类型LoginTypeDef = {|userId:字符串,userName:字符串,userRole:字符串|};

reactjs redux flowtype immutable.js
1个回答
0
投票

用于为所描述的值添加注释,应使用RecordFactory类型。可以从immutable导入。

它的用法应该看起来像:

const StoreRecord: RecordFactory<LoginTypeDef> = Record({
  userId: null,
  userName: null,
  userRole: null
});

如果需要将Record调用的结果分配给变量并为其提供注释,则应使用另一种类型RecordOf,如下所示:

const StoreState: RecordOf<LoginTypeDef> = StoreRecord({userId: 'test});
© www.soinside.com 2019 - 2024. All rights reserved.