babel-esLint的问题:解析错误:ES模块的require()

Sas*_*ago 39 eslint babeljs

你好。我需要你的帮助。我该如何修复这个错误?

解析错误:不支持来自 Desktop/Projects/MealsToGo/node_modules/babel-eslint/lib/require-from-eslint.js 的 ES 模块 Desktop/Projects/MealsToGo/node_modules/eslint-scope/lib/definition.js 的 require() 。相反,将Desktop/Projects/MealsToGo/node_modules/babel-eslint/lib/require-from-eslint.js 中的definition.js 的 require 更改为动态 import() ,该动态 import() 在所有 CommonJS 模块中都可用

小智 94

发生这种情况可能是因为您和我一样,正在使用旧的 babel 解析器。该软件包babel-eslint自 2020 年 3 月起已被弃用。该软件包已迁移到新的仓库,如果您想了解更多信息,我建议您查看Babel git。

只需更改并安装或更新到打包的最新解析器.eslintrc.js

旧的 .eslintrc.js:

module.exports = {
  parser: 'babel-eslint',
  ...
};
Run Code Online (Sandbox Code Playgroud)

新的.eslintrc.js

module.exports = {
   parser: '@babel/eslint-parser',
   ...
};
Run Code Online (Sandbox Code Playgroud)

  • 我继承了一个类似的项目来解决这个问题。如果它对其他人有帮助,我必须进行的配置更改都在 package.json 中:将包从“babel-eslit”更新为“@babel/eslint-parser”,然后更新“eslintConfig”>“parserOptions”> `parser` 设置为 `@babel/eslint-parser` 。 (7认同)