![](/img/trans.png)
[英]Failed to load plugin 'jsx-a11y' declared in 'package.json » eslint-config-react-app': Unexpected token =
[英]Failed to load plugin 'flowtype' declared in 'package.json » eslint-config-react-app': Cannot find module 'eslint/use-at-your-own-risk'
我使用create-react-app
创建了一个新的 React 项目。
在终端npm start
。
立即收到此错误
无法加载在“package.json » eslint-config-react-app”中声明的插件“flowtype”:找不到模块“eslint/use-at-your-own-risk”
我该如何解决?
不是这个项目,而是如何让create-react-app
无错误地创建?
发生的事情是,当您运行npm start
,它可能正在使用 eslint 进行一些检查,据我所知,如果您有 eslint 错误,create-react-app 有一些检查会破坏您的构建,因此它们是有关联的。
您在此处遇到的错误与 eslint 使用的称为子路径导出的节点功能有关,但它的支持是否命中取决于库的使用方式。 例如,当与 jest 一起使用时,这已被突出显示以引起问题。
对于flowtype
eslint 插件, 这是导致您出现问题的确切代码行。
您还可以阅读有关typescript eslint 插件的类似问题。
解决方案以及我什至能够理解导致此问题的原因是我昨天在 https 的eslint-plugin-flowtype
的克隆中对此进行了修复(鉴于原始插件缺乏维护) : //github.com/flow-typed/eslint-plugin-ft-flow/pull/23 。
我会提出一个关于 create-react-app 的问题,看看他们是否愿意将插件换成新的插件,这样可以进行更多的维护并解决您遇到的问题。
我修复这个只是删除:
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
}
在 package.json
我也有同样的问题。 所以就我而言,我发现我的节点版本是 v12。 所以我知道 CRA v5.x 应该与 >= node v14 一起使用。 所以我切换到 Node v16.10.0 并解决了它。
我在 webstorm 中遇到了同样的问题。 在阅读了其他人的评论后,我的解决方案是使用 Eslint 版本 7.32.0,我最初使用的是 6.8,这导致了问题,现在它可以工作了。 我还读到不支持版本 8 或更高版本
我还发现我可以通过将我的节点版本切换到 LTS 版本来解决这个问题。
DISABLE_ESLINT_PLUGIN=true react-app-rewired start
可以避免这个错误,并且不需要 ">= node v14" (即使 node10 也可以工作),因为只有eslint@8
使用Module.createRequire
,参考 doc Upgrade to react-scripts @5 并添加 Web 工人支持和 APP PixelShapeRN 提交添加 Web 工人支持 CRA v5(和 Webpack 5)
如果目前仍有人遇到此问题,我设法通过deleting
node-modules
文件夹和package-lock.json
文件为自己解决了此错误。 然后运行npm install
。 这也适用于Node
和create-react-app
@latest
版本。
将节点版本更新到 v16 将起作用。
使用 nvm 命令安装更新节点版本
nvm install 16.16.0
这将安装和更新正在运行的节点版本,使用它来切换回系统中存在的任何节点版本
nvm use v14.14.0
对我来说,将我的节点版本从 12.12.0 升级到 16.0.0 很有帮助。 旧节点版本主要造成此问题。
尝试使用较新版本的节点来运行您的应用程序。 我有 12 个并尝试了 16 个,它解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.