Actualmente, tengo una aplicación angular con un decorador de métodos para manejar errores de todos los métodos en el componente. Captura todos los errores de los métodos, pero no puede detectar el error dentro de subscribe. ¿Alguna sugerencia para hacer esto?
Este es mi código actual.
Este es el método de muestreo que quiero detectar los errores.
@logActionErrors() getEmailSettings() { this.sharedService.getSMTPConfigurations().subscribe(() => { throw('this is an error'); }, (ex) =>{ console.log(ex); }) }Este es mi decorador de métodos
export function logActionErrors(): any { return function (target: Function, methodName: string, descriptor: any) { const method = descriptor.value; descriptor.value = function (...args: any[]) { try { let result = method.apply(this, args); // Check if method is asynchronous if (result && result instanceof Promise) { // Return promise return result.catch((error: any) => { handleError(error, methodName, args, target.constructor.name); }); } if(result && result instanceof Observable ){ console.log(methodName); result.pipe(catchError((error: any) => { console.log(error); handleError(error, methodName, args, this.constructor.name); return result })) } // Return actual result return result; } catch (error:any) { handleError(error, methodName, args, target.constructor.name); } } return descriptor; } } Quiero atrapar este throw('this is an error'); error en esta muestra. alguna sugerencia para hacer esto?