Rumah > hujung hadapan web > tutorial js > Mengapa Saya Mendapat Ralat 'SyntaxError: Tidak boleh menggunakan pernyataan import di luar modul' dalam Projek Node.js Saya?

Mengapa Saya Mendapat Ralat 'SyntaxError: Tidak boleh menggunakan pernyataan import di luar modul' dalam Projek Node.js Saya?

Mary-Kate Olsen
Lepaskan: 2024-12-12 19:43:08
asal
323 orang telah melayarinya

Why Am I Getting a

"SyntaxError: Tidak boleh menggunakan pernyataan import di luar modul" dalam Projek Node.js

Masalah:

Apabila mencuba untuk menggunakan Babel terkini dalam projek ApolloServer, "SyntaxError: Tidak boleh menggunakan pernyataan import di luar ralat modul" berlaku. Isu ini nyata selepas bertukar daripada Babel 6 kepada Babel 7.

Punca:

Node.js versi 13.2.0 atau lebih tinggi diperlukan untuk menggunakan pernyataan import dalam modul. Versi terdahulu Node.js mungkin tidak mengenali penyataan import dan membuang ralat di atas.

Penyelesaian:

Pilihan 1: Tentukan Jenis Modul dalam Package.json

  • Pastikan anda memasang versi Node.js terkini (13.2.0 ).
  • Tambahkan medan "jenis": "modul" pada fail induk package.json yang terdekat. Ini mengarahkan Node.js untuk mentafsir semua fail .js dan .mjs sebagai modul ES.
// package.json
{
  "type": "module"
}
Salin selepas log masuk

Pilihan 2: Gunakan Sambungan .mjs Secara Eksplisit

  • Daripada menggunakan sambungan .js untuk fail modul anda, namakannya secara eksplisit dengan sambungan .mjs. Node.js akan mengecam fail ini secara automatik sebagai modul ES.

Petua Tambahan:

  • Semak semula konfigurasi Babel anda untuk memastikan ia dikemas kini- sehingga kini dan menyokong modul ES.
  • Semak dokumentasi untuk pakej yang menyebabkan isu untuk melihat sama ada ia mempunyai keperluan atau pengesyoran khusus untuk menggunakan pernyataan import dalam projek Node.js.

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'SyntaxError: Tidak boleh menggunakan pernyataan import di luar modul' dalam Projek Node.js Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan