Tengo una clase llamada UserInputError que extiende Error
export default class UserInputError extends Error { constructor(message: string) { super(message); this.name = "UserInputError"; } }Cuando trato de detectar este error específico, uso
try { // some code } catch(e: any) { // catch logic here console.log(e instanceof UserInputError, e.name === "UserInputError");la salida es
false true ¿Por qué instanceof de no funciona como se esperaba? importa el contexto? ¿o fue porque he usado any ?
Editar:
Este es el fragmento de código que arroja el error.
if (invalidNumberOfMethods) { throw new UserInputError("you must chose one method"); } NOTA 1 : no throw UserInputError en lugar de throw new UserInputError
> grep -R --include "*.ts" --exclude-dir=node_modules "throw UserInputError" . > echo $? > 1NOTA 2: estoy usando esto con NodeJs, no con el navegador.