VSCode 不断要求在 NextJS 和 React 17 应用程序上导入 React
Posted
技术标签:
【中文标题】VSCode 不断要求在 NextJS 和 React 17 应用程序上导入 React【英文标题】:VSCode keeps asking to import React on NextJS and React 17 apps 【发布时间】:2021-03-12 11:30:32 【问题描述】:我已经在我的 eslintrc.json 文件中将以下规则设置为关闭:
但是每当我按 ctrl+. 尝试从不同的文件导入组件时,vscode 都会建议我导入 React。
有没有办法阻止这种情况发生?
以下是我与 .eslintrc.json 一起使用的插件:
【问题讨论】:
你安装了 eslint VSCode 插件让他们解析你的 eslintrc 吗? 是的,老实说,eslint 似乎没有问题。我认为这是 jsx 的默认 vscode 行为。 也许您必须将 Next.js 的页面/组件扩展名 (.js/.ts) 添加到"react/jsx-filename-extension": [1, "extensions": [".js", ".jsx"] ], //should add ".ts" if typescript project
已经有 .js、.jsx 和 .tsx
您能粘贴完整的.eslintrc.json
吗?您是否有其他可能与您的规则发生冲突的插件(airbnb react,...)?
【参考方案1】:
这不是 ESLint 的问题 - 这是 Typescript 的问题。 It's tracked here 并且您可以确认即使您为您的项目禁用 ESLint,您也会收到此错误和错误建议。目前没有其他解决方法,但它有望在 TS4.3 中修复。如果发布了解决方法或解决方案,我将更新此答案。
【讨论】:
如果您使用的是 TS 的夜间版本(截至 3/30),这似乎已修复。希望 4.3 生产版很快就会有真正的修复。以上是关于VSCode 不断要求在 NextJS 和 React 17 应用程序上导入 React的主要内容,如果未能解决你的问题,请参考以下文章
在 NextJS 应用程序中使用 React Context API 会禁用静态站点生成器吗?