gpt4 book ai didi

flowtype - 使用 immutablejs 记录并在其中调用更新时无法解决流注释错误

转载 作者:行者123 更新时间:2023-12-02 09:18:11 26 4
gpt4 key购买 nike

我看到以下记录类型代码:

type AppProps = {
+fetches: Map<string, number>,
};
export const makeApp: RecordFactory<AppProps> = Immutable.Record({
fetches: Immutable.Map()
});
export type App = RecordOf<AppProps>;

现在我有一个使用记录更新函数的调用:

const state = makeApp({});
const result = state.update('fetches', val =>
val.set(action.meta.actionBase, 1)
);

所有单元测试都通过,行为良好,但出现流程错误:

Error:(40, 18) Missing type annotation for T. T is a type parameter declared in RecordInstance [1] and was implicitly instantiated at call of method update [2].

我知道这里发生了什么,但我不知道众所周知的流程可以实际解决这个问题,甚至想出一个解决方法。请帮忙!

ImmutableJS 版本“不可变”:“^4.0.0-rc.12”,

最佳答案

Flow 正在请求 T 的具体类型参数,该参数在 stateupdate 函数中定义。

以下是此错误消息的原因和解决方法的另一个示例: Missing annotation error Fixed

如果您提供 state.update 的类型签名,我也许能够提供更多信息。

关于flowtype - 使用 immutablejs 记录并在其中调用更新时无法解决流注释错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53347301/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com