Nodemon 和 Jest,仅在 运行 Babel 异步时支持
Nodemon and Jest, only supported when running Babel asynchronously
我正在尝试 运行 开玩笑,但这个错误一直阻止我 运行 进行任何测试:
Error while loading config -
You appear to be using a native ECMAScript module configuration file, which is only supported when running Babel asynchronously.
at loadCjsOrMjsDefault (node_modules/@babel/core/lib/config/files/module-types.js:59:13)
at loadCjsOrMjsDefault.next (<anonymous>)
at readConfigJS (node_modules/@babel/core/lib/config/files/configuration.js:174:47)
at readConfigJS.next (<anonymous>)
at Function.<anonymous> (node_modules/@babel/core/lib/gensync-utils/async.js:16:3)
at evaluateSync (node_modules/gensync/index.js:251:28)
at Function.sync (node_modules/gensync/index.js:89:14)
at sync (node_modules/@babel/core/lib/gensync-utils/async.js:56:25)
at sync (node_modules/gensync/index.js:182:19)
我正在使用 nodemon
和 sucrase
到 运行 我的服务器,如果相关的话。
我的 babel 配置
module.exports = {
presets: [
[
'@babel/preset-env',
{
targets: {
node: 'current'
}
}
]
]
};
我的package.json
{
"type": "module",
"scripts": {
"dev": "nodemon src/server.js",
"test": "jest"
}
}
我认为问题是你的 package.json
说你正在使用 ES6 模块,但你的 Babel 配置使用的是 module.exports
CommonJS(不是 ES6 模块)。
我将 babel.config.js
重命名为 babel.config.cjs
,这解决了问题。我想您也可以将 module.exports
更改为 export default
,但我还没有尝试过。
我正在尝试 运行 开玩笑,但这个错误一直阻止我 运行 进行任何测试:
Error while loading config -
You appear to be using a native ECMAScript module configuration file, which is only supported when running Babel asynchronously.
at loadCjsOrMjsDefault (node_modules/@babel/core/lib/config/files/module-types.js:59:13)
at loadCjsOrMjsDefault.next (<anonymous>)
at readConfigJS (node_modules/@babel/core/lib/config/files/configuration.js:174:47)
at readConfigJS.next (<anonymous>)
at Function.<anonymous> (node_modules/@babel/core/lib/gensync-utils/async.js:16:3)
at evaluateSync (node_modules/gensync/index.js:251:28)
at Function.sync (node_modules/gensync/index.js:89:14)
at sync (node_modules/@babel/core/lib/gensync-utils/async.js:56:25)
at sync (node_modules/gensync/index.js:182:19)
我正在使用 nodemon
和 sucrase
到 运行 我的服务器,如果相关的话。
我的 babel 配置
module.exports = {
presets: [
[
'@babel/preset-env',
{
targets: {
node: 'current'
}
}
]
]
};
我的package.json
{
"type": "module",
"scripts": {
"dev": "nodemon src/server.js",
"test": "jest"
}
}
我认为问题是你的 package.json
说你正在使用 ES6 模块,但你的 Babel 配置使用的是 module.exports
CommonJS(不是 ES6 模块)。
我将 babel.config.js
重命名为 babel.config.cjs
,这解决了问题。我想您也可以将 module.exports
更改为 export default
,但我还没有尝试过。