Open Arro opened 2 years ago
Once you switch your package.json to type: module, usage of the this package breaks, including utils such asbabel-node.
package.json
type: module
babel-node
Lets say your .babelrc.cjs looks like this:
.babelrc.cjs
module.exports = { presets: [ [ "@babel/preset-env", { useBuiltIns: "usage", corejs: { version: 3, proposals: true }, targets: { node: "14" } } ] ], plugins: [ [ "module-resolver", { alias: { src: "./src" }, extensions: [".js"] } ] ] }
If you have a file like src/nested/very/deep.js and you want to load it in another file like src/nested-elsewhere/also/very/deep.js
src/nested/very/deep.js
src/nested-elsewhere/also/very/deep.js
$ babel-node src/nested-elsewhere/also/very/deep.js
results in:
Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'src' imported from /Users/myuser/Code/myproject/src/nested-elsewhere/also/very/deep.js
To reaffirm, this only happens once switching to ESM modules.
I'm getting the same. I spotted this on a competitor's issues list, which may indicate the cause (https://github.com/ilearnio/module-alias/issues/59).
Once you switch your
package.json
totype: module
, usage of the this package breaks, including utils such asbabel-node
.Lets say your
.babelrc.cjs
looks like this:If you have a file like
src/nested/very/deep.js
and you want to load it in another file likesrc/nested-elsewhere/also/very/deep.js
results in:
To reaffirm, this only happens once switching to ESM modules.