Sigo recibiendo el siguiente error:
UnhandledPromiseRejectionWarning: Rechazo de promesa no controlado. Este error se originó al lanzar dentro de una función asíncrona sin un bloque catch o al rechazar una promesa que no se manejó con .catch(). Para finalizar el proceso del nodo en caso de rechazo de la promesa no controlada, utilice la marca CLI --unhandled-rejections=strict (consulte https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode ). (id de rechazo: 2)
Después de buscar algunas soluciones, todo lo que tengo que hacer es colocar mi código dentro de un bloque de captura de prueba, que puede ver a continuación, pero sigo recibiendo este error, ¿qué estoy haciendo mal?
Estoy tratando de actualizar una columna y establecer cualquier matriz en ella en una matriz vacía.
Parse.Cloud.job("updateFollowedBy", async (request) => { try { var emptyArray = []; let date = new Date(); let query = new Parse.Query("Categories"); const results = await query.find({useMasterKey:true}); results.forEach(object => { if (object.get("followedBy")) { object.set("followedBy", emptyArray); } }); Parse.Object.saveAll(results); return ("Successfully updated column on " + date); } catch(e) { console.log(e); } });La promesa rechazada no controlada probablemente provenga de la función Parse.Object.saveAll() ya que no está esperando esto. Prueba con:
Parse.Cloud.job("updateFollowedBy", async (request) => { try { var emptyArray = []; let date = new Date(); let query = new Parse.Query("Categories"); const results = await query.find({useMasterKey:true}); results.forEach(object => { if (object.get("followedBy")) { object.set("followedBy", emptyArray); } }); await Parse.Object.saveAll(results); // You might want to pass { useMasterKey: true } option to make it work without exception: //await Parse.Object.saveAll(results, { useMasterKey: true }); return ("Successfully updated column on " + date); } catch(e) { console.log(e); } });