Como título. Tengo un archivo que expone una var foo de nivel superior/global. Pero recibí un error cuando ejecuté esos archivos de producción en Webpack Dev Server, que decía que la variable global foo no está definida. En el punto de entrada (este es un término de Webpack) .tsx -file, agregué la siguiente línea para importar este archivo .js : (Estoy seguro de que el problema no está en el alias de la ruta, @ , y de hecho Puedo omitir la extensión .js también)
import '@/external/path/to/non_es6_module.js' Ahora estoy leyendo sobre esto: https://babeljs.io/docs/en/babel-plugin-transform-modules-commonjs , es decir, creo que babel está relacionado con este problema. Pero el ejemplo provisto en el enlace es diferente a mi caso, es decir, en mi caso, no hay export en el archivo .js que quiero importar:
export default 42; Object.defineProperty(exports, "__esModule", { value: true, }); exports.default = 42;Uno podría decir que:
¿Por qué no simplemente modificar el archivo
.js, es decir, agregando la palabra clave deexport, para que pueda usar ese complemento de Babel para hacer la transformación?
Pero el problema es que el archivo .js que quiero importar es un archivo generado por una máquina . Y creo que no es ideal modificarlo manualmente, ya que se actualizará en un futuro (cercano). ¡No quiero hacer esto cada vez!