Saya punya proyek ApolloServer yang memberi saya masalah, jadi saya pikir saya mungkin memperbaruinya dan mengalami masalah ketika menggunakan Babel terbaru. "Index.js" saya adalah:
require('dotenv').config()
import {startServer} from './server'
startServer()
Dan ketika saya menjalankannya saya mendapatkan kesalahan "SyntaxError: Tidak dapat menggunakan pernyataan impor di luar modul". Pertama saya mencoba melakukan hal-hal untuk meyakinkan TPTB * bahwa ini adalah modul (tidak berhasil). Jadi saya mengubah "impor" menjadi "memerlukan" dan ini berhasil.
Tapi sekarang saya memiliki sekitar dua lusin "impor" di file lain yang memberi saya kesalahan yang sama.
* Saya yakin akar masalah saya adalah bahwa saya bahkan tidak yakin apa yang mengeluh tentang masalah ini. Saya berasumsi itu adalah Babel 7 (karena saya berasal dari Babel 6 dan saya harus mengubah preset) tetapi saya tidak 100% yakin.
Sebagian besar dari apa yang saya temukan untuk solusi tampaknya tidak berlaku untuk Node lurus. Seperti ini di sini:
Modul ES6 Impor yang memberikan "Sintaks Tanpa PerintahError: Pengidentifikasi tak terduga"
Mengatakan itu diselesaikan dengan menambahkan "type = module" tetapi ini biasanya akan masuk dalam HTML, yang saya tidak punya. Saya juga mencoba menggunakan preset lama proyek saya:
"presets": ["es2015", "stage-2"],
"plugins": []
Tapi itu membuat saya kesalahan lain: "Kesalahan: File Plugin / Preset tidak diizinkan untuk mengekspor objek, hanya fungsi."
UPDATE: Ini adalah dependensi yang saya mulai dengan:
"dependencies": {
"@babel/polyfill": "^7.6.0",
"apollo-link-error": "^1.1.12",
"apollo-link-http": "^1.5.16",
"apollo-server": "^2.9.6",
"babel-preset-es2015": "^6.24.1",
jest.config.js
ke 'ts-jest/presets/js-with-ts'
- masih memiliki beberapa masalah lain tetapi ini menyelesaikan yang besar. ..... eh ya, masalah saya adalah pengujian terkait ... build normal baik-baik saja