Rumah >hujung hadapan web >tutorial js >Analisis ringkas tentang cara memanggil modul commonjs dalam mod esmodule nod
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, }3 eksport Medan package.json masing-masing menandakan fail kemasukan modul yang berbeza (ini juga merupakan amalan biasa untuk kebanyakan perpustakaan pihak ketiga, mis.
// 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" }Rekod Masalah
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!