ionic-team / ionic-team/rollup-plugin-node-polyfills

Events API polyfilled badly?

Abierto
#16 1 comentario 7 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
JavaScript
Estrellas
142
Forks
65
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Hey there,

I am using Snowpack to deal with dependencies. I am aware that Snowpack uses `rollup-plugin-node-polyfills` to polyfill Node built-in modules. I'd like to use a package called `async-mqtt` which relies on node built-in modules (events, stream, buffer). So I installed it with Snowpack, and polyfilled it with this plugin. However, I noticed that the polyfilling process did something strange. I got an error: `Class extends value [object Object] is not a constructor or null`

Now, this error applies for the following code: `class Parser extends events`. So I checked what is the value of `events`, and it turns out, that `events` is an object instead of a class:

```
var events = /*#__PURE__*/Object.freeze({
__proto__: null,
'default': EventEmitter,
EventEmitter: EventEmitter
});
```

Obviously, you cannot extend a class from an object like this. How can I resolve this issue?
Thanks.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Línea de trabajo

Comienza reproduciendo la compilación de Snowpack con async-mqtt y el tratamiento del módulo events por parte de rollup-plugin-node-polyfills. Inspecciona el binding events generado y compáralo con el uso `class Parser extends events` del paquete. Se considera terminado cuando el valor events polyfillado pueda extenderse sin el error de constructor informado.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
javascript, rollup
Área
build-system, tooling
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
42/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.