So starten Sie schnell mit VUE3.0:
Ich habe in letzter Zeit viele NodeJS-Skripte geschrieben und bin auf ein Problem gestoßen. Nach dem Ändern des Typs „Modul“ von package.json können einige Tools nicht normal verwendet werden (z. B. postcss-cli).
In diesem Artikel wird hauptsächlich beschrieben, wie das Problem der Verwendung des CommonJS-Moduls im Esmodule-Modus gelöst werden kann.
1. Ersetzen Sie das Plug-in;
es scheint Unsinn, ist es aber nicht. Nehmen wir als Beispiel Postcss. Tatsächlich gab es ein Problem, das behoben werden musste, aber es wurde noch nicht aktualisiert. Ich habe Neuimplementierungen wie postcss-es-modules gesehen (das Downloadvolumen ist nicht hoch, daher habe ich es noch nicht ausprobiert).
Oder verwenden Sie Plug-Ins durch die Unterstützung des Vite/Rollup-Frameworks selbst (wir werden später darüber sprechen, wie das Framework selbst damit umgeht), z. B.
// tailwind.config.js Standard exportieren { purge: ['./*.html', './src/**/*.{vue,js,ts,jsx,tsx,css}'], darkMode: false, // oder 'media' oder 'class' Thema: { verlängern: {}, }, Varianten: { verlängern: {}, }, Plugins: [], } // postcss.config.js Rückenwind aus 'tailwindcss' importieren Autoprefixer aus „Autoprefixer“ importieren tailwindConfig aus './tailwind.config.js' importieren Standard exportieren { Plugins: [tailwind(tailwindConfig), autoprefixer], } // vite.config.js CSS: { Postcss, }
2. Ändern Sie über die von nodejs unterstützte Erweiterungsmethode (Typ: „Modul“) das Dateisuffix in .cjs. Anschließend können Sie das commonjs-Modul über import default aus „*.cjs“ importieren; z. B.
// utils.cjs Funktion sum(a, b) { gib a + b zurück } module.exports = { Summe } // index.js Utils aus „./utils.js“ importieren console.log(utils.sum(1, 2))
3. Markieren Sie die Eintragsdateien verschiedener Module über das Exportfeld von package.json (dies ist auch eine gängige Praxis für die meisten Bibliotheken von Drittanbietern, z. B.
// package);
json "Exporte": { „import“: „./index.js“, „require“: „./index.cjs“ }
1. Wie geht nodejs mit .mjs/.cjs-Suffixdateien um?
Nodejs lädt .mjs-Dateien immer mit dem Modul esmodule und .cjs-Dateien mit commonjs. Wenn package.json auf den Typ „module“ eingestellt ist, werden .js-Dateien immer als esmodule geladen.