tutorial page online docs body app commonjs webpack javascript ecmascript-6

commonjs - page - webpack wikipedia



¿Cómo consumir el paquete npm con el módulo es6 a través de Webpack y 6to5? (2)

Digamos que quiero usar Inmutable en mi proyecto (o cualquier paquete npm dado). Tengo npm install ed it, entonces está en node_modules . Por supuesto, tiene exportaciones CommonJS allí. Yo, sin embargo, quiero usar módulos es6 en mi proyecto.

Estoy usando Webpack para compilar todo junto, con el 6to5-loader para manejar la sintaxis del módulo es6.

En mi archivo de origen, digo import Immutable from ''immutable''; --- pero esto causa un problema porque la import es6 busca un valor default es6 para haber sido exportado, que no es el caso (para el paquete Immutable o probablemente casi cualquier otro paquete npm). El código compilado termina pareciéndose a esto: var Immutable = require(''immutable'')["default"]; --- que por supuesto arroja un error, ya que no hay una propiedad default para encontrar.

¿Puedo consumir los paquetes npm con módulos es6?


Lo descubrí. (La solución es específica de la herramienta --- pero los módulos es6 solo existen ahora en la medida en que están habilitados para herramientas, así que creo que eso es suficiente de una "respuesta").

La transpilación del módulo por defecto de 6to5 usa la opción common , lo que da como resultado el mismo problema que mencioné anteriormente. Pero hay otra opción: commonInterop --- que debe haber sido construido para tratar exactamente con la situación que estoy tratando. Ver https://6to5.github.io/modules.html#common-interop

Así que tres aplausos para 6to5.