Me dieron una promesa y la devuelvo al final de mi función para que otro código haga más acciones después de mí. Una especie de middleware, por así decirlo.
return apiCallPromise;Digamos que por alguna razón deseo evitar que esas acciones sucedan y "tragarme" una promesa en particular. Por ejemplo haciendo lo siguiente:
if (promiseShouldBeStopped) return new Promise((resolve) => {}) return apiCallPromise;Esto devuelve correctamente una promesa, sin embargo, nunca se resuelve. Y así, la 'cadena de promesas' se ha detenido en seco.
Esto me parece un anti-patrón ya que la promesa queda pendiente para siempre. ¿Hay algún efecto negativo de esto que deba tener en cuenta, o es una buena técnica para "filtrar" las promesas?
¿Esto causa problemas de memoria?
El código futuro no sabe que esta promesa se ha filtrado y, por lo tanto, no puede hacer ningún código de limpieza "atrapar" o "finalmente".