--experimental-modules
ES6 モジュールを使用するために、Node アプリケーションを実行するときにフラグを使用します。
ただし、このフラグを使用すると、メタ変数は使用できません。このモードと互換性のある、__dirname
格納されている同じ文字列を取得する別の方法はありますか?__dirname
ベストアンサー1
Node.js 20.11 / 21.2以降では、import.meta.dirname
:
const __dirname = import.meta.dirname;
Node.js 10.12以降では、複数のファイルを作成する必要がなく、プラットフォーム間でファイル名の特殊文字を処理する代替手段があります。
import { dirname } from 'path';
import { fileURLToPath } from 'url';
const __dirname = dirname(fileURLToPath(import.meta.url));
Node.js 14.14 以降では、組み込みモジュールおよびに'path'
、オプションでスキーム'url'
のプレフィックスを付けることができます。node
'node:path'
'node:url'