Closed berkobob closed 2 years ago
me too.
Error [ERR_REQUIRE_ESM]: require() of ES Module not supported
Instead change the require to a dynamic import() which is available in all CommonJS modules.
Same to me
Error [ERR_REQUIRE_ESM]: Must use import to load ES Module: /home/dm/code/mock-ui/packages/server/node_modules/ora/index.js
server: require() of ES modules is not supported.
server: require() of /home/dm/code/mock-ui/packages/server/node_modules/ora/index.js from /home/dm/code/mock-ui/packages/server/lib/server.js is an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which defines all .js files in that package scope as ES modules.
server: Instead rename index.js to end in .cjs, change the requiring code to use import(), or remove "type": "module" from /home/dm/code/mock-ui/packages/server/node_modules/ora/package.json.
server: at Module._extensions..js (internal/modules/cjs/loader.js:1015:13)
server: at Object.reqExtensions.<computed> [as .js] (/home/dm/code/mock-ui/packages/server/node_modules/babel-watch/runner.js:71:7)
server: at Module.load (internal/modules/cjs/loader.js:863:32)
server: at Function.Module._load (internal/modules/cjs/loader.js:708:14)
server: at Module.require (internal/modules/cjs/loader.js:887:19)
server: at require (internal/modules/cjs/helpers.js:74:18)
server: at Object.<anonymous> (/home/dm/code/mock-ui/packages/server/lib/server.js:4:1)
server: at Module._compile (internal/modules/cjs/loader.js:999:30)
server: at babelWatchLoader (/home/dm/code/mock-ui/packages/server/node_modules/babel-watch/runner.js:58:13)
server: at Object.reqExtensions.<computed> [as .js] (/home/dm/code/mock-ui/packages/server/node_modules/babel-watch/runner.js:69:7)
same here? any solutions?
when i try 'import ora from 'ora';' in my node project getting:
import ora from 'ora';
^^^^^^
SyntaxError: Cannot use import statement outside a module
at Object.compileFunction (node:vm:352:18)
at wrapSafe (node:internal/modules/cjs/loader:1031:15)
at Module._compile (node:internal/modules/cjs/loader:1065:27)
at Object.Module._extensions..js (node:internal/modules/cjs/loader:1153:10)
at Module.load (node:internal/modules/cjs/loader:981:32)
at Function.Module._load (node:internal/modules/cjs/loader:822:12)
at Module.require (node:internal/modules/cjs/loader:1005:19)
at require (node:internal/modules/cjs/helpers:102:18)
at runScraper (D:\Coding\vizesizgezi.com\scraper\manager.js:28:16)
at Object.module.exports.initialize (D:\Coding\vizesizgezi.com\scraper\manager.js:19:3)
}
注意当前加载模块的规则是哪种? 一种是 ES6 模块,简称 ESM; 另一种是 Node.js 专用的 CommonJS 模块,简称 CJS。 这两种模块不兼容。
// 在commonJS模块,可以使用 await import()
;(async () => {
const ora = await (await import('ora')).default
const spinner = ora('正在发布到服务器...')
// enjoy your code
})
writing like this will looks better
getSpinner(txt = "") {
const { default: ora } = await import("ora");
return ora(txt);
}
const ora = require('ora') 依赖版本使用这个 "ora": "^5.4.0"
I'm getting the error message:
When I try and require ora:
const ora = require('ora')
I'm using node v16.9.0