[解決済み] Node.jsでES6インポートを使用するにはどうすればよいですか?[重複しています]。
2022-03-20 20:14:39
質問
Node.jsのES6インポートのコツを掴もうとしていて、この例で提供されている構文を使おうとしているところです。
チートシートリンク
を覗いています。 対応表 しかし、どのバージョンが新しい import 文をサポートしているのか見つけることができませんでした(テキストの import/require を探してみました)。私は現在Node.js 8.1.2を使用しており、また、チートシートが.jsファイルを参照しているため、.jsファイルでも動作するはずだと信じています。
コードを実行すると(チートシートの最初の例から引用した)。
import { square, diag } from 'lib';
エラーが出ます。
SyntaxError: 予期しないトークンのインポートが発生しました。
インポートしようとしているライブラリへの参照。
//------ lib.js ------
export const sqrt = Math.sqrt;
export function square(x) {
return x * x;
}
export function diag(x, y) {
return sqrt(square(x) + square(y));
}
何が足りないのか、どうすれば
node
を認識させるために
import
の文は?
どのように解決するのですか?
<ブロッククオートNode.jsでは、ES6をサポートするための実験的なサポートが含まれています。 詳しくはこちらをご覧ください。 https://nodejs.org/docs/latest-v13.x/api/esm.html#esm_enabling .
TLDR
Node.js >= v13
Node.js 13以上では非常に簡単です。どちらかが必要です。
-
ファイルを
.mjs
拡張子、または -
追加
{ "type": "module" }
に近いpackage.json
.
上記のどちらかを行うだけで、ECMAScriptのモジュールを使用できるようになります。
Node.js <= v12
Node.jsのバージョンを使用している場合
9.6
- 12,
セーブ
という ES6 モジュールを含むファイルを
.mjs
のような拡張子をつけて実行します。
node --experimental-modules my-app.mjs
関連
-
[解決済み】Node.jsのホスト名/IPが証明書のaltnamesと一致しない。
-
[解決済み] Node.jsのプログラムにコマンドライン引数を渡すにはどうしたらいいですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.jsで終了する方法
-
[解決済み] Node.jsでファイルを書き込む
-
[解決済み] Node.jsアプリケーションをデバッグするにはどうすればよいですか?
-
[解決済み] Node.jsのmodule.exportsの目的と使い方を教えてください。
-
[解決済み] Node.jsのnpmモジュールをアンインストールするにはどうすればよいですか?
-
[解決済み】Node.jsのrequireとES6のimport/exportを使い分ける。
-
[解決済み】SyntaxError: モジュール外部でimport文を使用できない
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Node.jsのエラーECONNRESETをデバッグするにはどうすればよいですか?
-
[解決済み】ExpressJSとMeteorJSの比較【終了しました
-
[解決済み】Node.jsのホスト名/IPが証明書のaltnamesと一致しない。
-
[解決済み】npm 5で作成されたpackage-lock.jsonファイルはコミットするのでしょうか?
-
[解決済み】POSTできない/expressを使用するとエラーが発生する
-
[解決済み] Node.jsで「btoaが定義されていない」エラーが発生する
-
[解決済み] のエラーが発生しました。これはおそらくnpmの問題ではありません。上に追加のログ出力があると思われます
-
[解決済み] エラーです。Cannot find module 'ejs'
-
[解決済み] DynamoDBで一括削除するにはどうしたらいいですか?
-
[解決済み] Node.js - SyntaxError: 予期しないトークンのインポート