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

862
Vistas
Prueba Node Express Mocha: TypeError: chai.request no es una función

Tengo una aplicación Typscript y una API. Escribí la siguiente prueba según numerosas búsquedas en Google y algunos ejemplos encontrados aquí en SO y otros lugares. No veo ningún problema en el código de prueba. Buscar en Google TypeError: chai.request is not a function , hasta ahora me está llevando ahora a dónde. ¿Ves mi error a continuación?

Gracias, gracias, gracias por cualquier ayuda :-)

ingrese la descripción de la imagen aquí

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

0

Resolví esto con el siguiente enfoque (Express.js con TypeScript)

 import chai from 'chai'; import chaiHttp from 'chai-http'; chai.use(chaiHttp);

Espero eso ayude.

Recuerde instalar @types/chai y otros paquetes de definición de tipo para que funcione el bloque anterior

over 4 years ago · Santiago Trujillo Denunciar

0

Puedo reproducir el problema si habilito la opción del compilador esModuleInterop . Cuando esta opción está habilitada, import * as chai from 'chai'; solo importa los miembros que tiene el módulo chai en el momento de la importación. De hecho, creo que se considera dudoso agregar exportaciones a un módulo ES en tiempo de ejecución. Intenta import chai from 'chai'; o import chai = require('chai'); en cambio; cualquiera de los dos me funciona.

over 4 years ago · Santiago Trujillo Denunciar

0

Está mezclando import y require sintaxis, ¡es una mala idea!

Use solo la sintaxis de import :

 import * as chai from 'chai'; import * as chai-http from 'chai-http'; chai.use(chai-http);

Editar

Desafortunadamente, parece que la sintaxis del módulo es6 no es compatible con chai-http. Puedes ver el problemaaquí

 import * as chai from 'chai'; import chaiHttp = require('chai-http'); chai.use(chai-http);
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