在 CommonJS Node 应用程序中导入 ES6 模块?

2024-01-09

长话短说,我正在尝试使用一个只有 ES6 模块入口点的 npm 包,即bids-validator (GitHub https://github.com/bids-standard/bids-validator),在 CommonJS 模块中,因为我的整个 50 多个模块应用程序都是用 CommonJS 构建的。根据节点文档 https://nodejs.org/api/esm.html#esm_require,执行此操作的标准方法是使用import()功能。我尝试了这种方法,代码如下:

async function importValidator() {
  const { validate } = await import('bids-validator')
  return validate
}

const validate = importValidator()

然而,这会导致错误bids-validator包,不一定是上面的导入函数:

error: unhandledRejection: Cannot use import statement outside a module
/*/app/api/node_modules/bids-validator/index.js:2
import validate from './validators'

有没有办法绕过这个问题,以便我可以在 CommonJS 模块中使用该包?


None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 CommonJS Node 应用程序中导入 ES6 模块? 的相关文章

随机推荐