Javascript 创建异步的管道函数,以便可以等待函数
我创建了一个简单的管道函数,它接受一个对象作为参数。对象将返回到下一个函数 函数本身需要在of循环的Javascript 创建异步的管道函数,以便可以等待函数,javascript,Javascript,我创建了一个简单的管道函数,它接受一个对象作为参数。对象将返回到下一个函数 函数本身需要在of循环的中等待。我试图找到如何做到这一点的例子,并阅读了多篇文章,但都没有成功。当我在管道函数前面添加async时,我得到以下错误: TypeError: pipeline(...) is not a function 下面是我的代码的样子: async function pipeline(...funcs) {... // Throws the error function pipeline(...
中等待。我试图找到如何做到这一点的例子,并阅读了多篇文章,但都没有成功。当我在管道函数前面添加async
时,我得到以下错误:
TypeError: pipeline(...) is not a function
下面是我的代码的样子:
async function pipeline(...funcs) {... // Throws the error
function pipeline(...funcs) {
return function(val) {
let lastResult
for (let func of funcs) {
console.log(func)
lastResult = func(lastResult || val)
}
return lastResult
}
}
const pipe = pipeline(
function1,
function2,
function3
)(object)
创建管道不能是异步的,而是执行管道:
function pipeline(...funcs) {
return async function(val) {
for (let func of funcs) {
console.log(func);
val = await func(val);
}
return val;
}
}
您在哪个函数
关键字前面放置了异步
?您是否尝试将管道转换为异步函数?我建议不要将等待
放在管道
中。明确承诺返回函数,并传递类似于p=>p.then(function2)
的内容,而不是function2
。我将其添加到管道函数前面。我据此编辑了我的帖子。@Bergi现在正在看你的建议。这完美地解决了它。非常感谢。将在8分钟内标记为正确。:)