Artikel ini akan meneruskan pembelajaran nod dan memperkenalkan cara memanggil modul commonjs dalam mod esmodule saya harap ia akan membantu semua orang!
Saya telah menulis banyak skrip nodej baru-baru ini dan menghadapi masalah. Selepas mengubah suai jenis: "modul" package.json, sesetengah alatan tidak boleh digunakan seperti biasa (cth. postcss-cli).
Artikel ini terutamanya merekodkan dan menyelesaikan masalah cara menggunakan modul commonjs dalam mod esmodule.
1. Gantikan pemalam itu; Mari kita ambil postcss sebagai contoh Sebenarnya, terdapat
isuuntuk disusuli, tetapi ia masih belum dikemas kini. Saya telah melihat pelaksanaan semula seperti postcss-es-modules (jumlah muat turun tidak tinggi, jadi saya belum mencubanya lagi). Atau gunakan pemalam melalui sokongan rangka kerja vite/rollup itu sendiri (saya akan bercakap tentang cara rangka kerja itu sendiri mengendalikannya kemudian), mis.
2 oleh nodejs (jenis : huruf "modul"), tukar akhiran fail kepada .cjs, dan kemudian anda boleh mengimport modul commonjs melalui import lalai daripada '*.cjs' cth.// tailwind.config.js export default { purge: ['./*.html', './src/**/*.{vue,js,ts,jsx,tsx,css}'], darkMode: false, // or 'media' or 'class' theme: { extend: {}, }, variants: { extend: {}, }, plugins: [], } // postcss.config.js import tailwind from 'tailwindcss' import autoprefixer from 'autoprefixer' import tailwindConfig from './tailwind.config.js' export default { plugins: [tailwind(tailwindConfig), autoprefixer], } // vite.config.js css: { postcss, }
// utils.cjs function sum(a, b) { return a + b } module.exports = { sum } // index.js import utils from './utils.js' console.log(utils.sum(1, 2))
// package.json "exports": { "import": "./index.js", "require": "./index.cjs" }
Nodejs sentiasa memuatkan fail .mjs dengan modul esmodule dan fail .cjs dengan commonjs. Apabila package.json ditetapkan untuk menaip: "modul", fail .js sentiasa dimuatkan sebagai esmodule.
Untuk lebih banyak pengetahuan berkaitan nod, sila lawati:
tutorial nodejsAtas ialah kandungan terperinci Analisis ringkas tentang cara memanggil modul commonjs dalam mod esmodule nod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!