javascript - 干净的箭头函数 - 对数组中的多个元素调用生成器

标签 javascript ecmascript-6 generator yield

我正在尝试使用一个干净的箭头函数来调用yield fork(....)。我身边很多地方都出现过这种情况。我正在尝试这样做:

const { ids } = yield take('REQUEST');

// ids is array of numbers [1, 2, 3]

ids.forEach(id => yield fork(requestWorker, id)); ////// this is what im trying to do - this is pseudo-code i know you cant use in non-generators (non-super-star functions)

但是这不起作用,我必须这样做:

for (const id of ids) {
    yield fork(requestWorker, id);
}

而不是:

ids.forEach(id => yield fork(requestWorker, id)); // this is pseudo-code i know you cant use in non-generators (non-super-star functions)

有没有比 for-of 循​​环更简洁的方法?喜欢这个箭头函数方法吗?

最佳答案

你可以产生另一个生成器

function* take(x) {
    var id = /* ... */,
        requesWroker = /* ... */;

    yield* fork(requesWroker, id);
}

var all = [...take('REQUEST')];

关于javascript - 干净的箭头函数 - 对数组中的多个元素调用生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48718942/

相关文章:

javascript - 隐藏图像直到它们被加载

javascript - 多个元素中的 jquery 动画缺陷

javascript - 突出显示类型 react 的搜索文本

javascript - ES6 命名对象参数解构

javascript - 要求 ('babel/register' )不起作用

javascript - 无法在 JSON 对象内动态添加值

reactjs - 如何使用 runSaga 启动 redux saga watcher

python - 提取涉及 tornado.gen.Task 的异步代码

python-2.7 - 合并生成器对象以计算 NLTK 中的频率

javascript - PhpStorm 中的多行字符串背景颜色