Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

159
Views
Problemas con algunas clases que no se exportan cuando debería haber surgido al migrar el código base de Webpack a Rollup

Por lo tanto, estoy transfiriendo una base de código antigua de 2017 de Webpack a Rollup por motivos de rendimiento y tamaño del código, también debido a las antiguas dependencias que usaba la base de código.

Desafortunadamente, la nueva versión de Rollup tiene un problema para el que no pude encontrar una solución. No parece exportar algunas clases (en este caso, Engine y BackgroundLayer ), pero la versión inalterada de Webpack sí lo hace. ¿Hay alguna razón para esto?

El Error en cuestión:

 Uncaught ReferenceError: Engine is not defined

Aquí está mi rollup.config.js

 import arraybuffer from '@wemap/rollup-plugin-arraybuffer'; import { babel } from "@rollup/plugin-babel"; import commonjs from "@rollup/plugin-commonjs"; import pkg from './package.json'; import resolve from "@rollup/plugin-node-resolve"; // import { terser } from "rollup-plugin-terser"; export default { input: "src/index.js", output: { name: "index", file: `dist/${pkg.name}.js`, format: "umd", }, external: ['ms'], plugins: [ arraybuffer({ include: '**/*.dat' }), // so Rollup can import .dat files resolve(), // so Rollup can find `ms` commonjs(), // so Rollup can convert `ms` to an ES module // terser(), // minifying // babel configuration babel({ exclude: 'node_modules/**', babelHelpers: "runtime", skipPreflightCheck: true }), ] }

Si alguien requiere el código base completo, aquí están las dos versiones:

  • Código del paquete web: https://github.com/kdex/earthbound-battle-backgrounds
  • Código acumulativo: https://github.com/IamRifki/earthbound-battle-backgrounds-rollup
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Lo descubrí, tuve que llamar a mi bundle.js dentro de un module :

index.html

 <script type="module"> import { BackgroundLayer, Engine } from "./bundle.js"; const engine = new Engine([new BackgroundLayer(153), new BackgroundLayer(298)]); engine.animate(); </script>
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!