节点要求和导入
Node Require and Import
import path from 'path';
import fs from 'fs';
fs.mkdirSync(path.join(__dirname, 'folderName'));
我想在节点中创建目录,当我需要模块 (commonjs) 时,一切正常,但是当我将 package.json
中的类型更改为 module
并使用导入时,文件夹不起作用得到创建,我做错了什么?
ESM 模块中没有 __dirname
。如果这是你需要的东西,你可以用这个来制造它:
import path from 'path';
import { fileURLToPath } from 'url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
但是,fs
模块中的许多功能可以更直接地使用 import.meta.url
。有关详细信息,请参阅 。
我认为 __dirname
在 es6 模块上不可用,所以我将其替换为 './'
。如果你正在寻找优雅,你可以使用 npm 包。
import path from 'path';
import fs from 'fs';
fs.mkdirSync(path.join(__dirname, 'folderName'));
我想在节点中创建目录,当我需要模块 (commonjs) 时,一切正常,但是当我将 package.json
中的类型更改为 module
并使用导入时,文件夹不起作用得到创建,我做错了什么?
ESM 模块中没有 __dirname
。如果这是你需要的东西,你可以用这个来制造它:
import path from 'path';
import { fileURLToPath } from 'url';
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
但是,fs
模块中的许多功能可以更直接地使用 import.meta.url
。有关详细信息,请参阅
我认为 __dirname
在 es6 模块上不可用,所以我将其替换为 './'
。如果你正在寻找优雅,你可以使用 npm 包。