javascript - 为什么 Redux.js "Dispatch"TypeScript 接口(interface)有模板参数?

标签 javascript typescript redux

Relevant line .

如果界面如下:

export interface Dispatch<S> {
    <A extends Action>(action: A): A;
}

...而S明明没有被用到,那为什么会有呢?

我注意到 S 在其他地方用于“存储”相关的东西,但如果它没有用在这个界面中,我认为它不应该在那里。

最佳答案

你是对的,它本身似乎没有多大意义。

我猜他们这样做是为了确保在 middleware 中返回类似的调度函数.

对于像 redux-thunk 这样的中间件,new dispatch function确实使用 <S>参数,虽然我不确定在这种情况下默认值是否重要。

关于javascript - 为什么 Redux.js "Dispatch"TypeScript 接口(interface)有模板参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42381712/

相关文章:

javascript - 更新 redux 中的对象数组

javascript - 将 antd 与 redux-form 结合使用

typescript - 使用 pulumi Typescript 获取 Elasticache 端点

javascript - 使用 Redux 强制执行一个操作在另一个操作之前调用

javascript - Passport 身份验证回调挂起

javascript - 正则表达式 - 选择不是标签名称或属性的单词

typescript - 将Typescript与Electron 9结合使用时出错

javascript - 捆绑 Node.js 后端 - 好的做法还是坏的做法?

javascript - 如何在node.js服务器上使用AnnYang语音识别?

javascript - 计算哪个 JS 选择器优先