Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

169
Vistas
¿Por qué cuando genero un error obtengo un error de cadena?

Recibo varios errores, está bien, cuando el usuario rechaza, cuando la transacción fue mala, etc.

pero ahora quiero mostrar diferentes mensajes por su error de código

en mi servicio de mi proyecto estoy recibiendo este error

 {code: 4001, message: 'MetaMask Tx Signature: User denied transaction', stack: '{\n "code": 4001,\n "message": "MetaMask Tx'}

este es mi codigo

 function getInformation=()=>{ try{ ... } catch (err) { error = err console.log('error', error) // error is the up message throw new Error(error) } }

entonces estoy usando la función getInformation así:

 try{ ... const info= getInformation() } catch (error) { console.log('EERROR', error,error.code)

aquí veo el error como cadena

 EERROR Error: [object Object] at _callee$ (PWDService.js?9579:13) at tryCatch (runtime.js?96cf:62) at Generator.invoke [as _invoke] (runtime.js?96cf:296), undefined

y error.code no está definido, ¿por qué obtengo una cadena y error.code no está definido?

obviamente error.code no está definido porque el error es una cadena

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

El primer parámetro del constructor Error espera un mensaje legible por humanos, es decir, una cadena . Esto significa que el objeto que está pasando a new Error está siendo editado con ToString , lo que resulta en "[object Object] ..." como mensaje

Si está satisfecho con el error que se produjo en la captura inicial, simplemente vuelva a lanzar

 try { // ... } catch (err) { console.log('error', err); throw err; }

Si desea crear un nuevo error personalizado, deberá crearlo modificando el new Error o creando su propia clase de Error , es decir

 try { // ... } catch (err) { console.log('error', err); const error = new Error(err.message); error.code = err.code; // other stuff throw error; }

o

 class MMError extends Error { constructor(message, code) { super(message); this.code = code; // other stuff } } // ... try { // ... } catch (err) { console.log('error', err); const error = new MMError(err.message, err.code); throw error; }
over 4 years ago · Santiago Trujillo Denunciar

0

@react1 siempre puede reconstruir el error y ver todas sus propiedades haciendo algo similar a lo siguiente,

 try { // ... } catch (err) { let errObject = Object.assign({}, err) // console.log(errObject) to see what's there and what you can use }
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda