终端中的eslint无法找到模块'eslint-config-react-app'

Val*_*ing 11 sublimelinter eslint create-react-app yarnpkg

我使用create-react-app制作一个反应应用程序.

linter在create-react-app中工作,但现在我想让它在我的sublimetext中工作.

  1. 已安装的eslint yarn global add eslint(eslint v4.1.1但也试过v3.19.0因为反应应用程序使用了那个)
  2. 运行eslint --init并配置它
  3. 转到项目目录并创建一个名为的文件 .eslintrc
  4. 内部文件:
{
"extends": "react-app"
}
Run Code Online (Sandbox Code Playgroud)
  1. 在项目目录中运行 eslint src/App.js
  2. 在终端中获取错误:

    引用自:/mnt/storage/Dev/newapp/.eslintrc错误:找不到模块'eslint-config-react-app'

    参考:/mnt/storage/Dev/newapp/.eslintrc在ModuleResolver.resolve(/home/user/.config/yarn/global/node_modules/eslint/lib/util/module-resolver.js:74:19)at在加载时解析(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config-file.js:515:25)(/home/user/.config/yarn/global/node_modules/eslint /lib/config/config-file.js:584:26)在configExtends.reduceRight(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config-file.js:421:36)在loadFromDisk(/home/user/.config)的applyExtends(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config-file.js:405:28)的Array.reduceRight(native)处/yarn/global/node_modules/eslint/lib/config/config-file.js:556:22)at Object.load(/home/user/.config/yarn/global/node_modules/eslint/lib/config/config- file.js:592:20)在Config.getConfigHierarchy(/home/user/.config/yarn/global/)的Config.getLocalConfigHierarchy(/home/user/.config/yarn/global/node_modules/eslint/lib/config.js:228:44) node_modules/eslint/LIB/config.js:182:43)

我添加了yarn global add babel-eslint eslint-plugin-react eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-flowtype.但我认为这不再是必要了!

nde*_*ker 7

您的文件中可能存在配置错误package-lock.json,其中 ESLint 已被删除。我遇到了完全相同的问题并通过以下方式解决了它:

  1. cd <your-project-directory>
  2. rm package-lock.json
  3. rm -rf node_modules
  4. npm install

您可以运行npm ls eslint --depth=99来验证该eslint软件包是否已安装。我是通过 GitHub 上feross 的评论偶然发现这一点的。


iai*_*ton 6

我认为,如果您添加错误消息(eslint-config-react-app)中提到的模块,它应该可以工作吗?例如。yarn add --dev eslint-config-react-app


Val*_*ing 3

所以我发现你必须全局安装“所有”eslint 软件包。因为它不允许你处理全局 eslint 和本地包

所以我所做的是 yarn global add eslint@^3.19.0 eslint-plugin-jsx-a11y@^5.0.现在它有效了:|