[解決済み】SyntaxError: モジュール外部でimport文を使用できない
質問
私は ApolloServer プロジェクトに問題があるので、それを更新しようと思い、最新のBabelを使用したときに問題が発生しました。私の "index.js" はそうです。
require('dotenv').config()
import {startServer} from './server'
startServer()
そして、それを実行すると、エラーが発生します。
SyntaxError: Cannot use import statement outside a module
まず私は、これがモジュールであることをTPTB*に納得させるために、いろいろやってみました(成功しませんでしたが)。そこで、"を変更しました。 インポート を"に変更しました。 要求する "で、これはうまくいきました。
しかし、今私は約二十の" インポート "が他のファイルでも同じエラーを発生させています。
*私の問題の根本は、何が問題に文句を言っているのかさえ分からないということです。私はそれがBabel 7であると仮定しました(Babel 6から来て、私はプリセットを変更しなければならなかったので)しかし、私は100%の確信を持っていません。
私が見つけた解決策のほとんどは、ストレートなNodeには適用されないようです。例えば、このようなものです。
ES6モジュール Import giving "Uncaught SyntaxError: 予期しない識別子"
type=module" を追加することで解決したと書かれていますが、これは通常HTMLに入るもので、私は何も持っていません。また、私のプロジェクトの古いプリセットを使用してみました。
"presets": ["es2015", "stage-2"],
"plugins": []
しかし、これには別のエラーが発生します: "エラー。プラグイン/プリセットファイルはオブジェクトのエクスポートを許可されていません。
以下は、私が始めた依存関係です。
"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",
解決方法は?
最新バージョンのNode.jsがインストールされていることを確認してください(少なくとも13.2.0以上)。次に、以下のいずれかを行ってください。 ドキュメントに記載されている :
オプション1
最寄りの親会社で
package.json
ファイルに、トップレベルの
"type"
フィールドに、値として
"module"
. これにより、すべての
.js
と
.mjs
ファイルは、ESモジュールとして解釈されます。個々のファイルを
共通JS
を使用することで
.cjs
を拡張した。
// package.json
{
"type": "module"
}
オプション2
ファイル名を明示的に
.mjs
の拡張子を使用します。他のすべてのファイル、例えば
.js
の場合、CommonJSとして解釈され、それがデフォルトとなります。
type
で定義されていない場合は
package.json
.
関連
-
[解決済み】TypeError: 'undefined'はオブジェクトではありません。
-
[解決済み] Uncaught Invariant Violation: 前のレンダリング中よりも多くのフックをレンダリングした
-
[解決済み】ES6マップオブジェクトをソートすることは可能ですか?
-
[解決済み】module.exports "モジュールが定義されていません"
-
[解決済み】Javascript、[オブジェクトHTMLInputElement]を表示中。]
-
[解決済み】中央値の計算 - javascript
-
[解決済み] mochaのテスト実行時にBabelの予期せぬトークンがインポートされる
-
[解決済み] ES6インポートで中括弧を使用するのはどのような場合ですか?
-
[解決済み] Node.jsで "Cannot find module "エラーを解決するにはどうしたらいいですか?
-
[解決済み] Node.js - SyntaxError: 予期しないトークンのインポート
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ある要素を別の要素に移動させるには?
-
[解決済み] テスト
-
[解決済み】SyntaxError: ChromeのJavascriptコンソールでUnexpected Identifierが発生する。
-
[解決済み】WebpackとBabelで「このファイルタイプを扱うには適切なローダーが必要な場合があります。
-
[解決済み】 Uncaught Reference Error: stLight is not defined (in Chrome only)
-
[解決済み】 \u003C とは何ですか?
-
[解決済み】中央値の計算 - javascript
-
[解決済み] Node.jsでのインポート:エラー "Must use import to load ES Module" [duplicate].
-
[解決済み] Node.js - SyntaxError: 予期しないトークンのインポート
-
[解決済み】Node.jsのrequireとES6のimport/exportを使い分ける。