一起使用 create-react-app 和 Sublimelinter ESlint

Posted

技术标签:

【中文标题】一起使用 create-react-app 和 Sublimelinter ESlint【英文标题】:using create-react-app and Sublimelinter ESlint together 【发布时间】:2016-12-09 14:00:04 【问题描述】:

我使用 facebook 的 create-react-app,它有意隐藏所有配置设置,并为我们留下一个可爱的简单文件结构

太好了!但是出现了一件非常烦人的事情:

SublimeLinter 不再有效 因为 .eslintrc 配置文件不再位于项目的根目录。

要点

我知道我可以将另一个 .eslintrc 文件放在根目录下, 但我希望能够在一个地方设置我的规则

我知道npm eject 可以将整个项目结构放在前面,但我想保持简单。否则变为just another boilerplate

我注意到在 package.json

我已经尝试过什么?

我想过的一个方向是改变:

"eslintConfig": 
   "extends": "./node_modules/react-scripts/config/eslint.js"

到:

"eslintConfig": 
   "extends": "./.eslintrc.js"

但它似乎需要所有 eslint-plugins(它们神奇地隐藏在 node_modules 中),所以我不确定它是否正确。

有什么见解吗?

【问题讨论】:

【参考方案1】:

SublimeLinter 不再有效,因为 .eslintrc 配置文件不再位于项目的根目录。

这是不正确的。

SublimeLinter 可以正常工作但是你目前必须在全球范围内安装一些东西。生成的项目的 README 包括 instructions to get linter IDE integration working:

最后,你需要全局安装一些包:

npm install -g eslint babel-eslint eslint-plugin-react eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-flowtype

我们认识到这是次优的,但由于我们隐藏 ESLint 依赖项的方式,目前需要它。 ESLint 团队已经是working on a solution to this,所以这可能会在几个月后变得不必要。

当然,这是假设您对我们为您选择的 ESLint 配置感到满意。

【讨论】:

其实 Dan,我只需 本地安装就可以了。这可能吗? 当然,如果你对一堆 devDependencies 没问题的话。 我发现它实际上更干净,而且它是版本证明的。 我还必须安装 eslint-config-react-app,文档现在位于 github.com/facebook/create-react-app/blob/master/packages/…(Dan 的链接已损坏) 404。这是正确的链接吗? Displaying Lint Output in the Editor

以上是关于一起使用 create-react-app 和 Sublimelinter ESlint的主要内容,如果未能解决你的问题,请参考以下文章

将 emscripten webassembly 线程 (C++) 与 webpack (create-react-app) 一起使用

create-react-app 可以与 TypeScript 一起使用吗

如何将 webpack 与 create-react-app 一起使用?

是否可以将装饰器与 create-react-app 一起使用?

无法让 @ant-design/pro-layout 的样式与“create-react-app”一起使用

如何让 MobX 装饰器与 Create-React-App v2 一起工作?