[解決済み] Node.js - SyntaxError: 予期しないトークンのインポート
質問
何が問題なのかわかりません。 ノード v5.6.0 NPM v3.10.6
コードです。
function (exports, require, module, __filename, __dirname) {
import express from 'express'
};
エラーです。
SyntaxError: Unexpected token import
at exports.runInThisContext (vm.js:53:16)
at Module._compile (module.js:387:25)
at Object.Module._extensions..js (module.js:422:10)
at Module.load (module.js:357:32)
at Function.Module._load (module.js:314:12)
at Function.Module.runMain (module.js:447:10)
at startup (node.js:140:18)
at node.js:1001:3
解決方法は?
ノード13以上
以来
ノード13
のどちらかを使用することができます。
.mjs
を拡張するか、あるいは
{"type": "module"}
をpackage.jsonに記述してください。あなたは
しない
を使用する必要があります。
--experimental-modules
フラグを使用します。
node.jsでModulesが安定版としてマークされるようになりました。
ノード12
以来
ノード12
のどちらかを使用することができます。
.mjs
を拡張するか、あるいは
"type": "module"
をpackage.jsonに記述してください。そして、nodeを実行する際には
--experimental-modules
のフラグを立てます。
ノード9
で
ノード9
というフラグがあり、そのフラグの後ろで有効になっています。
.mjs
を拡張した。
node --experimental-modules my-app.mjs
一方
import
は確かにES6の一部です。
<ストライク
は、残念ながらNodeJSではまだデフォルトでサポートされておらず、ごく最近になってブラウザでのサポートが開始されました。
参照 MDN のブラウザ互換性表 と このNodeの問題 .
James M Snellの Node.jsのES6モジュールに関する最新情報 (2017年2月)をご参照ください。
<ブロッククオート作業は進行中ですが、時間がかかりそうです。現在のところ、少なくとも1年前後を見込んでいます。
ネイティブでサポートが表示されるまで(
Node 13+ で安定マークがつきました
),
<ストライク
を使用し続ける必要があります。
require
ステートメント
:
const express = require("express");
どうしてもNodeJSのES6/7の新機能を使いたい場合は、Babelを使ってコンパイルすることができます。 以下はサーバーの例です。 .
関連
-
[解決済み】React - uncaught TypeError: 未定義のプロパティ 'setState' を読み取れない
-
[解決済み】JavaScriptエラー(Uncaught SyntaxError: Unexpected end of input)
-
[解決済み】TypeScript-のAngular Frameworkエラー - "exportAsがngFormに設定されたディレクティブはありません"
-
nodejs unhandledPromiseRejectionWarning メッセージ
-
[解決済み] ReferenceError: describe は定義されていません NodeJs
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] Node.jsを完全にアンインストールして、最初から再インストールする方法 (Mac OS X)
-
[解決済み】Node.jsのrequireとES6のimport/exportを使い分ける。
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
Vue+ElementUIによる大規模なフォームの処理例
-
Javascript Bootstrapのグリッドシステム、ナビゲーションバー、ローテーションの説明
-
Vueの「データを聴く」原則を解説
-
[解決済み] Error : 未定義のプロパティ 'map' を読み取ることができません。
-
[解決済み】ローカルファイルを開くことができません - Chrome: ローカルリソースの読み込みが許可されていない
-
[解決済み】TypeError: Router.use() はミドルウェアの関数を要求しているが、Object を取得した。
-
[解決済み】 env: node: macにそのようなファイルやディレクトリはありません
-
[解決済み】React Uncaught Error: 対象コンテナが DOM 要素でない [重複]。
-
JavaScriptのStringに関する共通メソッド
-
[解決済み] Node.jsでES6インポートを使用するにはどうすればよいですか?[重複しています]。