Error [ERR_REQUIRE_ESM]: require() of ES Module C:\Users\Admin\Desktop\Server\node_modules\formidable\src\index.js from C:\Users\Admin\Desktop\Server\back\productController.js not supported.
Instead change the require of index.js in C:\Users\Admin\Desktop\Server\back\productController.js to a dynamic import() which is available in all CommonJS modules.
at Object.<anonymous> (C:\Users\Admin\Desktop\Server\back\productController.js:5:20)
at Object.<anonymous> (C:\Users\Admin\Desktop\Server\server.js:15:27) {
code: 'ERR_REQUIRE_ESM'
}
Node.js v18.16.1
如何解决这个问题?我尝试使用导入,但不工作
1条答案
按热度按时间qpgpyjmq1#
不能在同一项目中同时使用“import”和“require”。
这可能意味着你在代码中使用了'require',但是包被导出为一个ES模块,它不使用'require',你必须'import'它。由于我们不能将'import'和'require'网格化,所以有几个选项:
1.使用'formidable-serverless' -一个镜像版本的强大,你可以'要求',但它可能是一个旧版本(如果这对你来说很重要)
1.将所有的“require”语句转换为“import”语句,那么使用常规的“fromidable”语句就不会有问题了
1.有一种方法可以让'require'和'import'语句在同一个文件中工作,但它很混乱,不推荐使用,如果你好奇的话,可以搜索'nodejs using require in es module'