【问题标题】:How do I fix eslint createRequire is not a function in Atom Editor?如何修复 eslint createRequire 不是 Atom 编辑器中的函数?
【发布时间】:2020-11-04 07:20:05
【问题描述】:

我很难追踪到这个问题,所以我发帖是为了帮助其他搜索类似错误的人。


我决定使用 eslint 和 Node.js 在 Atom 中的 Ubuntu 18.04 上建立一个新项目。

ESlint 本身在我的扩展 eslint:recommended 的配置下安装并运行得很好,但是当我安装 eslint-config-airbnb-base 并将我的配置更改为扩展 airbnb-base 时,我开始在 Atom 中遇到错误,它不会解析我的文件。

Error while running ESLint: createRequire is not a function.

删除airbnb并依赖eslint-plugin-import给出了类似的错误:

Error while running ESLint: Failed to load plugin 'import' declared in '.eslintrc.yaml': createRequire is not a function.

但是,在命令行上运行 eslint 效果很好。

【问题讨论】:

    标签: node.js eslint atom-editor eslint-config-airbnb


    【解决方案1】:

    这是一个兼容性问题。

    This change to eslint 删除了一个支持低于v10.12.0 的节点版本的polyfill

    我运行的是 Atom 1.45.0,它使用节点 v10.11.0。从命令行运行 eslint 有效,因为我在那里安装了节点 v12.18.2

    所以你有两个选项来解决这个问题:

    1. 升级您的 Atom 编辑器(在撰写本文时,版本 1.49.0 是最新的,它使用节点版本 v12.0.0)。如果这对您来说不可能,那么...
    2. 将 eslint 降级到版本 6.8.0(7.0.0 之前的最后一个版本)。此版本仍包含 createRequire 的 polyfill。

    【讨论】:

    • 非常感谢。第二个选项对我来说非常有效。
    【解决方案2】:

    您好,您可以轻松解决这些问题。 确保在终端中检查您已安装的节点版本 如果它已过时,则使用节点版本管理器更新节点 在终端中,输入命令 $ nvm 安装节点 14.15.0 当前节点的 lts 版本是 14.15.0。一旦你安装了节点的 lts 版本 $节点-v ..14.15.0 $npm -v ..6.7.0 现在启动开发服务器, $npm 开始

    这一次它不会显示任何错误

    【讨论】:

      猜你喜欢
      • 2015-07-29
      • 2018-02-17
      • 2016-09-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-10-26
      • 2021-09-25
      • 2019-12-25
      相关资源
      最近更新 更多