¿Qué versión de async estás usando?
2.5.0
¿En qué entorno ocurrió el problema (versión de nodo / versión del navegador)?
Versión del sistema operativo: OS X 10.12.6
Versión de nodo: 8.4.0
Versión del navegador: N / A
¿Qué hiciste?
// templateNames is an array of strings
async.map(templateNames, async (templateName, next) => {
let template;
try {
template = await utils.getFile(templateName);
} catch(err) {
next(err);
}
...
// and so on
Qué esperabas que sucediera?
next
es una función iterativa
¿Cuál fue el resultado real?
next
es undefined
Terminé usando la sintaxis .then().catch()
para lograr mi objetivo, pero aún quería compartir eso usando un AsyncFunction
( NOTA: esta no es la definición async
sino la AsyncFunction
nativa ) da como resultado que el iteratee ( next
) sea del tipo undefined
.
async
funciones try
/ catch
no es necesario porque Async detectará cualquier error que se produzca. Esto debería simplificar un poco su código.
// templateNames is an array of strings
async.map(templateNames, async templateName => {
const template = await utils.getFile(templateName);
...
// and so on
AsyncFunction
docs: http://caolan.github.io/async/global.html
🤦♂️ Leer esa parte de los documentos con más claridad habría sido inteligente. Gracias.
Para ser justos, esa descripción no es tan obvia en el sitio de documentos ... 🙄 📜
De hecho, creo que está bastante claro. Eché un vistazo a los documentos inicialmente y me perdí esa parte.
Comentario más útil
async
funcionestry
/catch
no es necesario porque Async detectará cualquier error que se produzca. Esto debería simplificar un poco su código.AsyncFunction
docs: http://caolan.github.io/async/global.html