内置模块
【Built-in modules】
内置模块 提供其公共 API 的命名导出。也提供了一个默认导出,它是 CommonJS 导出的值。默认导出可以用于包括修改命名导出在内的操作。内置模块的命名导出只有通过调用 module.syncBuiltinESMExports() 才会更新。
import EventEmitter from 'node:events';
const e = new EventEmitter(); import { readFile } from 'node:fs';
readFile('./foo.txt', (err, source) => {
if (err) {
console.error(err);
} else {
console.log(source);
}
}); import fs, { readFileSync } from 'node:fs';
import { syncBuiltinESMExports } from 'node:module';
import { Buffer } from 'node:buffer';
fs.readFileSync = () => Buffer.from('Hello, ESM');
syncBuiltinESMExports();
fs.readFileSync === readFileSync;