使用 typescript 将异步操作发送到 redux 调度

Posted

技术标签:

【中文标题】使用 typescript 将异步操作发送到 redux 调度【英文标题】:Sending async action to redux dispatch using typescript 【发布时间】:2016-09-23 04:11:34 【问题描述】:

当我尝试在 redux 中调度异步操作时遇到问题。 我正在使用 redux-thunk 来处理我的异步中间件。

我有一个像这样的异步操作函数:

function async() 
    return dispatch => 
        dispatch(req());

        setTimeout(function() 
            dispatch(rec());
        , 2000);
    

这是我的 createStore 语句:

const store = createStore(
    reducer,
    applyMiddleware(thunk)
);

当我尝试这样做时:store.dispatch(async()) 我遇到了这种错误:

错误 TS2345:'(dispach: any) => void' 类型的参数不是 可分配给“动作”类型的参数

当我只使用 javascript 时,代码本身就可以工作。

【问题讨论】:

【参考方案1】:

解决方案是从 absolutetyped 下载 redux 类型: typings i redux --ambient

【讨论】:

以上是关于使用 typescript 将异步操作发送到 redux 调度的主要内容,如果未能解决你的问题,请参考以下文章

如何将消息发送到指定的频道 - Discord.js v13 TypeScript

异步/等待超时

使用 Promise 的 TypeScript 异步类型保护

异步调度值的 TypeScript 类型

CLR 异步函数

Angular 2 - typescript 函数与外部 js 库的通信