簡體   English   中英

無法加載在“package.json » eslint-config-react-app”中聲明的插件“flowtype”:找不到模塊“eslint/use-at-your-own-risk”

[英]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 版本來解決這個問題。

  • 我在運行節點版本 12.13.0 時遇到了這個問題
  • 切換到版本 16.14.2 為我解決了這個問題。

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 這也適用於Nodecreate-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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM