Невозможно заставить eslint работать в редакторе Atom

1

На этом этапе я полностью потерял, как заставить ESLint устанавливать и использовать Atom. Поэтому я собираюсь опубликовать шаг за шагом и будет действительно потрясающе, если кто-то может помочь получить эту работу.

  • Атом: 1,19,5
  • Atom, linter 2.2.0
  • Atom, linter-eslint 8.2.1

Я удалил и переустановил плагины Atom и отключил все другие плагины, кроме тех, что были в Core и 2 linters.

  • npm list -g --depth=0

Все глобальные установки:

├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]

Это предпринятые мной шаги, чтобы заставить eslint работать в моем проекте Atom:

  • npm install -g eslint
  • cd/into/project
  • eslint --init
  • ? How would you like to configure ESLint? > User a popular style guide
  • ? Which style guide do you want to follow? >Airbnb
  • ? Do you use React? > y
  • ? What format do you want your config file to be in? > JSON
  • Удалить /node_modules
  • npm install

    /project/node_modules.eslintrc.json index.js package.json

.eslintrc.json

{
  "extends": "airbnb"
}

package.json

{
  "name": "lint-test",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "eslint": "^4.6.1",
    "eslint-config-airbnb": "^15.1.0",
    "eslint-config-rallycoding": "^3.2.0",
    "eslint-plugin-import": "^2.7.0",
    "eslint-plugin-jsx-a11y": "^5.1.1",
    "eslint-plugin-react": "^7.3.0"
  }
}

index.js

Это всего лишь файл, пытающийся получить некоторые результаты от eslint

ошибки

[Linter] Ошибка при запуске ESLint (открытая консоль разработчика)

Configuration for rule "jsx-a11y/anchor-has-content" is invalid: Value "[object Object]" no (or more than one) schemas match.

В консоли разработчика Atom отсутствуют ошибки. Но также ничего не происходит с Linter в редакторе Atom. Я могу печатать тарабарщину, и ничего не происходит.

Запуск отладки

  • DEBUG=eslint:* eslint.

Результаты отладки:

Cannot find module 'eslint-config-airbnb'
Referenced from: /Users/user/development/lint-test/.eslintrc.json
Error: Cannot find module 'eslint-config-airbnb'
Referenced from: /Users/user/development/lint-test/.eslintrc.json
at ModuleResolver.resolve (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/util/module-resolver.js:74:19)
at resolve (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config/config-file.js:515:25)
at load (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config/config-file.js:584:26)
at configExtends.reduceRight.e (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config/config-file.js:421:36)
at Array.reduceRight (native)
at applyExtends (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config/config-file.js:403:28)
at loadFromDisk (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config/config-file.js:556:22)
at Object.load (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config/config-file.js:592:20)
at Config.getLocalConfigHierarchy (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config.js:226:44)
at Config.getConfigHierarchy (/Users/user/.nvm/versions/node/v6.9.5/lib/node_modules/eslint/lib/config.js:180:43)

На этом этапе я предполагаю, что он пытается читать глобальные не локальные

Теперь снова ничего не происходит, снова запустите debug

  • DEBUG=eslint:* eslint.

Все еще не удается найти модуль

На данный момент я все еще работаю Cannot find module 'eslint-config-airbnb'

Новый локальный пакет.json

"devDependencies": {
  "eslint": "^4.6.1",
  "eslint-config-airbnb": "^15.1.0",
  "eslint-plugin-import": "^2.7.0",
  "eslint-plugin-jsx-a11y": "^5.1.1",
  "eslint-plugin-react": "^7.3.0"
}
  • npm install -g eslint-config-airbnb

Новые глобальные модули

├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── UNMET PEER DEPENDENCY [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
└── [email protected]

Итак, теперь я могу запустить DEBUG=eslint:* eslint. и может получить некоторые результаты. Однако в Atom ничего не работает.

Результаты:

/Users/user/development/lint-test/index.js
  1:1   error  Definition for rule 'jsx-a11y/href-no-hash' was not found  jsx-a11y/href-no-hash
  1:7   error  'config' is assigned a value but never used                no-unused-vars
  1:24  error  Unable to resolve path to module '../something'            import/no-unresolved
  1:39  error  Missing semicolon                                          semi

 4 problems (4 errors, 0 warnings)
  1 error, 0 warnings potentially fixable with the '--fix' option.

На данный момент у меня нет идей о том, как заставить Atom работать с eslint...

Теги:
atom-editor
eslint

2 ответа

0
Лучший ответ

Не вникая в проблему и не найдя особую точку неудачи, я решил начать с нуля.

  • Удалить глобальные узловые модули.
  • Удалите все плагины и темы NON core Atom.
  • удалите Atom.
  • переустановите Atom.
  • установить ESLint и поддерживать только зависимости.

Сделав это, я смог запустить ESLint без проблем. Мое предположение во всем этом есть конфликт в плагине или теме. Оттуда установка моих основных плагинов инструментов была успешной.

0

снимите флажок "Использовать глобальную установку ESLint" в linter-eslint ATOM, сделайте ее правильной

Ещё вопросы

Сообщество Overcoder
Наверх
Меню