相关疑难解决方法(0)

ESLint:插件“react”之间存在冲突

我在一个整体 npm 组件包内有一个 React 应用程序。React 应用程序用作演示站点,它使用此组件包作为 Storybook 之上的集成步骤。

\n
local-component-package\n\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 .storybook\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 demos\n\xe2\x94\x82   \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 react\n\xe2\x94\x82       \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 node_modules\n\xe2\x94\x82       \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 package.json\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 node_modules\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 src\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 .eslintignore\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 .eslintrc.json\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 package.json\n
Run Code Online (Sandbox Code Playgroud)\n

组件库(父目录)启用了 ESLint,而演示应用程序未启用。

\n

当我构建并运行我的 React 演示应用程序时,我看到正在提供相应的页面。当我进行更改并且页面热重新加载时,我收到以下错误:

\n
Plugin "react" was conflicted between "../../.eslintrc.json" and "BaseConfig \xc2\xbb /path/to/project/demos/react/node_modules/eslint-config-react-app/base.js".\n\n
Run Code Online (Sandbox Code Playgroud)\n

它似乎告诉我eslint-config-react-app演示应用程序中存在一个与基础(或父级)冲突的 npm 包().eslintrc.json文件冲突,但我不确定为什么或如何解决这个问题。

\n

这是我的演示应用程序package.json

\n
"dependencies": {\n  "react": "~16.8.5",\n  "react-dom": "~16.8.5",\n  "react-scripts": "5.0.0",\n  "local-component-package": "file:../../build"\n},\n
Run Code Online (Sandbox Code Playgroud)\n

笔记:我的基本组件 npm 包使用 Yarn 来获取最新版本的 Storybook 和 Webpack 以及众多必要的插件,以便能够很好地协同工作。我运行的演示应用程序使用 npm,因为它们模拟运行的生产应用程序。

\n
    \n
  • 我正在使用 VSCode …

javascript node.js npm reactjs yarnpkg

7
推荐指数
4
解决办法
2万
查看次数

如何修复“ESLint 无法唯一确定插件“@typescript-eslint””?

我正在尝试使用 React.js 和 typescript 在 ASP.NET core MVC 项目中启用 eslint linting,并且正在努力修复上述错误。

\n

我正在使用 Visual Studio 2022 社区版 17.6.3 和项目模板“ASP.NET Core with React.js”,该模板又使用 create-react-app 在 ClientApp 子文件夹中创建 React.js 应用程序项目文件夹。

\n

这是yarn 报告的错误消息。编辑 .tsx 代码文件时,类似的错误消息也出现在我的代码编辑器选项卡的顶部,但纱线似乎报告了最全面的消息。

\n
\n

纱线运行 v1.22.19\n$ eslint ./src/

\n

哎呀!出了些问题!:(

\n

ESLint:8.48.0

\n

ESLint 无法唯一确定插件“@typescript-eslint”。

\n
    \n
  • C:\\path\\to\\MyProject\\ClientApp\\node_modules@typescript-eslint\\eslint-plugin\\dist\\index.js (在“src.eslintrc.json”中加载)
  • \n
  • C:\\path\\to\\MyProject\\ClientApp\\node_modules\\eslint-config-react-app\\node_modules@typescript-eslint\\eslint-plugin\\dist\\index.js(加载于“ src.eslintrc.json \xc2\xbb eslint-config-react-app#overrides[0]")
  • \n
\n

请从任一配置中删除“插件”设置或删除任一插件安装。

\n
\n

我目前对此消息的理解是,编译器已检测到我的项目的不同部分需要不同版本的 @typescript-eslint 并且不知道要使用哪个版本(但我可能是错的,并且非常乐意予以更正)。

\n

我特别好奇如何阅读这部分错误消息:

\n
\n

(加载于“src.eslintrc.json \xc2\xbb eslint-config-react-app#overrides[0]”)

\n
\n

这似乎意味着我的 .eslintrc.json 文件包含类似的内容

\n
{\n    eslint-config-react-app: {\n        overrides: …
Run Code Online (Sandbox Code Playgroud)

node.js typescript reactjs typescript-eslint

6
推荐指数
1
解决办法
5985
查看次数