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

322
Vistas
TypeError no detectado: la clase extiende el valor #<Object> no es un constructor o es nulo, con superagent-throttle

Estoy tratando de importar el paquete npm superagent-throttle en mi proyecto de TypeScript , pero cuando lo hago, aparece este mensaje:

 Uncaught TypeError: Class extends value #<Object> is not a constructor or null

Si uso require funciona bien:

 const Throttle = require("superagent-throttle");

Pero comencé a usar Vite , que no permite require , así que tengo que usar import en su lugar.

El código al que hago referencia quiere instanciar una class es decir:

 this.throttle = new Throttle({ // set false to pause queue active: true, // how many requests can be sent every `ratePer` rate: 10000, // number of ms in which `rate` requests may be sent ratePer: 1000, // How many requests can be sent concurrently concurrent: 2 });

He probado diferentes variaciones de la declaración de import , pero ninguna de estas funciona para mí:

 import { Throttle } from "superagent-throttle"; import Throttle from "superagent-throttle"; import * as Throttle from "superagent-throttle";

Todos dan el mismo resultado: compilan bien pero fallan en tiempo de ejecución con el mismo mensaje de error (como el anterior).

El código en el archivo JS superagent-throttle parece bastante oscuro, no tengo idea de lo que está tratando de hacer, por lo que estoy luchando para tratar de entender cómo podría solucionar este problema:

Archivo del paquete: node_modules/superagent-throttle/dist/index.js :

 'use strict'; var _events = require('events'); var _events2 = _interopRequireDefault(_events); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } ... class Throttle extends _events2.default { constructor(options) { super(); // instance properties this._options({ _requestTimes: [0], _current: 0, _buffer: [], _serials: {}, _timeout: false }); ... etc ...
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

El mensaje de error apunta a _events2.default en el código infractor:

 var _events = require('events'); var _events2 = _interopRequireDefault(_events); ⋮ 👇 /* not a constructor or null */ class Throttle extends _events2.default {

El depurador revela que _events.default aparece como un objeto vacío, lo que significa que el módulo de events no está disponible. events (de Node ) normalmente no está disponible en el navegador, lo que lleva al error que observó.

Una solución es instalar un shim de events :

 npm i -S events

manifestación

about 4 years ago · Juan Pablo Isaza 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