MJS CJS
Filkonvertering

Konverter MJS til CJS

HURTIGT SVAR
Er det muligt at konvertere MJS til CJS?
Ja - MJS kan konverteres til CJS.

En .mjs-fil bruger ES-modul-syntaks, mens .cjs bruger CommonJS. En bundler som esbuild eller Babel omskriver automatisk import til require og export til module.exports. Den største hindring er top-level await, som CommonJS ikke kan repræsentere.

På denne side

Testet på macOS, Windows & Linux
Sidst verificeret Sep 2026

Flere gratis konvertere

HEIC, PNG, WEBP, MP3 og mere - alle værktøjer her er gratis.

Åbn værktøjskassen

Hvorfor konvertere MJS til CJS?

Folk konverterer til .CJS for at køre kode i ældre Node.js-opsætninger eller værktøjer, der forventer CommonJS, eller for at levere et require-kompatibelt build sammen med et ESM-build. Logikken forbliver den samme; kun modul-forbindelserne ændres.

Sådan konverterer du MJS til CJS

Babel OPEN-SOURCE

Tilføj @babel/plugin-transform-modules-commonjs til din konfiguration, og kør derefter babel input.mjs -o output.cjs for at omskrive imports til require.

Rollup FREE

Indstil output.format til cjs i rollup.config.js og byg; Rollup genererer en CommonJS-pakke fra din ESM-indgangsfil.

Om disse formater

Kvalitet & hvad man skal være opmærksom på

  • Top-level await har ingen CommonJS-ækvivalent og vil fejle ved konvertering.
  • Navngivne exports bliver til egenskaber på module.exports, og samspillet med default exports kan variere en smule.
  • Relative import-stier og import.meta.url skal muligvis justeres til CommonJS-outputtet.

Ofte stillede spørgsmål

Kan jeg konvertere manuelt?
For små filer ja: udskift import x from 'y' med const x = require('y') og export med module.exports.
Hvorfor fejlede mit build?
Oftest på grund af top-level await, som CommonJS ikke kan udtrykke; flyt det ind i en asynkron funktion.
Skal jeg omdøbe til .cjs?
Ja, hvis din package.json har "type": "module"; filtypenavnet .cjs tvinger Node til at behandle den som CommonJS.
Hvilket værktøj er hurtigst?
esbuild er det hurtigste til en enkelt kommando; Babel og Rollup giver finere kontrol over outputtet.