我在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:字符串|};
用于为所描述的值添加注释,应使用RecordFactory
类型。可以从immutable
导入。
它的用法应该看起来像:
const StoreRecord: RecordFactory<LoginTypeDef> = Record({
userId: null,
userName: null,
userRole: null
});
如果需要将Record
调用的结果分配给变量并为其提供注释,则应使用另一种类型RecordOf
,如下所示:
const StoreState: RecordOf<LoginTypeDef> = StoreRecord({userId: 'test});