我正在尝试async库中的parallelLimit()方法,它有几个签名取决于是否传递了第三个参数,并且在 JS 中一切都很好:
const { parallelLimit } = async
new Promise(async () => {
const tasks = Array(10)
.fill(null)
.map((item, i) => async () => i)
const limit = 5
await parallelLimit(tasks, limit)
.then((results) => console.log(results.join(',')))
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/async/3.2.3/async.js"></script>
我正在尝试在 TypeScript 中使用它:
npm i --save-dev @types/async
但是 TypeScript 没有选择正确的签名,假设该方法将返回void:
类型“void”.ts(2339) 上不存在属性“then”
如何解决这个问题呢?
具体来说,在您的情况下,您需要为
parallelLimit.