为什么找不到createRequire函数?

时间:2019-06-25 02:02:08

标签: node.js ecmascript-6

根据文档here,我有以下代码...

//test.mjs
import { createRequire } from 'module';
const DoSomething2 = module.createRequire("../dist/sce.cjs");

但是当我与node --experimental-modules test.mjs一起跑步时,我得到了..

  

SyntaxError:请求的模块“模块”未提供名为“ createRequire”的导出

1 个答案:

答案 0 :(得分:0)

如上所述,module.createRequire应该是createRequire

//test.mjs
import { createRequire } from 'module';
const DoSomething2 = createRequire("../dist/sce.cjs");

module 引用当前文件(请考虑 module.exports
模块指的是require('module')
只有后者包含 createRequire

此外,createRequire不能采用相对路径。使用path.resolve