繁体   English   中英

Typescript接口定义生成器

[英]Typescript interface to define a generator

我有一些看起来像这样的代码:

const saga =  function* (action) {
        yield put({
            type: actions.SUCCESS,
            payload: action.payload
        });
    };


const sagaWatcher =  createDefaultSagaWatcher(actions, saga); 

我正在转换为TypeScript。

我需要为生成器函数创建一个接口,以便可以在createDefaultSagaWatcher函数上添加类型检查。 我该怎么做呢?

我尝试做这样的事情:

interface ReduxSaga {
    (action: ReduxAction)* : any; 
}

但是该语法不正确。

就像async修饰符一样, *是实现细节。 对于函数调用者而言,重要的是,函数返回可以迭代的内容,迭代的实现方式与调用者无关。 由于您希望迭代返回任何内容,因此可以使用IterableIterator<any>

interface ReduxSaga {
    (action: ReduxAction): IterableIterator<any>; 
} 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM