Как исправить или избавиться от требования определения ESLint в приложении ASP.NET Razor? - PullRequest
0 голосов
/ 09 сентября 2018

Я только что обновил приложение ASP.NET Core 2.0 Razor до 2.1, чтобы получить новую функциональность для EF Core 2.1. Это мой первый крупный проект в ASP.NET, созданный на основе WinForms & PHP.

Я пытаюсь пройти и очистить список ошибок, но я получаю ошибки ESLint, и я никогда раньше не использовал ESLint, поэтому я не знаю, с чего начать. Google не слишком помогает в этом вопросе.

Вот предупреждения:

Warning react/jsx-sort-prop-types   (ESLint) Definition for rule 'react/jsx-sort-prop-types' was not found
Warning react/wrap-multilines   (ESLint) Definition for rule 'react/wrap-multilines' was not found
Warning react/require-extension (ESLint) Definition for rule 'react/require-extension' was not found

Я даже не знаю, что это значит, гугл их не просветляет, и они, похоже, не указывают на конкретную строку кода.

Что, черт возьми, эти предупреждения пытаются мне сказать?

Ответы [ 3 ]

0 голосов
/ 16 сентября 2018

Если вы хотите продолжать использовать EsLint (что хорошо), вы можете отключить и снова включить EsLint в начале файлов .js, чтобы избежать этих предупреждений и при этом иметь проверки EsLint, доступные для остальной части файла:

/ * eslint-disable * /

/ * eslint-enable * /

А для файлов, которыми вы не управляете, таких как jquery.js, bootstrap.js и т. Д., Вы можете просто полностью отключить эту строку в начале файла:

/ * eslint-disable * /

Вам просто нужно не забыть добавить эту строку после того, как вы обновили их.

0 голосов
/ 19 октября 2018

Если вы используете ESLint и не хотите добавлять код во все ваши файлы, вы можете отключить три правила в файле конфигурации ESLint. На самом деле есть два способа сделать это.

Долгий путь - найти файл конфигурации, который находится по адресу c: \ Users {username} .eslintrc. Вы можете открыть его с помощью текстового редактора, найти правило и установить значение 0 (ноль), что означает отключение. , Например:

"react/jsx-sort-prop-types": 0,

Короче говоря, перейдите в Инструменты / Параметры / Текстовый редактор / 'JavaScript / TypeScript' / Linting / General. На этой странице есть кнопка «Сбросить глобальный .eslintrc». Если вы нажмете на это, вы получите более новую версию файла конфигурации .eslintrc, в которой вообще нет этих правил, при условии, что у вас установлена ​​последняя версия Visual Studio.

Какой бы метод вы ни использовали, вам нужно будет перезапустить Visual Studio, и после этого ошибки должны исчезнуть.

Я думаю, что проблема возникает из-за того, что у вас (и у меня) есть старая версия этого файла (.eslintrc) с правилами, которые не поддерживаются или больше не работают для плагина React, который поставляется с ESLint для Visual Studio. Я получал эти ошибки в проектах, в которых не было установлено ни одного npm-модуля, и определенно не было React. Я думаю, что обновления до Visual Studio, вероятно, не перезаписывают этот файл, если вы его изменили.

Также возможно поместить файл .eslintrc в папку вашего проекта, и он заменит настройки в расположении по умолчанию. Таким образом, для корпоративного проекта, где вы видите эту проблему на нескольких машинах, вы можете просто зарегистрировать .eslintrc, который исправил ее. Однако, если вы делаете чистую установку Visual Studio на новом компьютере, я не думаю, что вы увидите проблему, поэтому я не уверен, что это необходимо.

Я использовал Visual Studio 2017 15.8.1 для проверки этого. ESLint получил довольно большое обновление за 15,8 .

0 голосов
/ 15 сентября 2018

Если вы НЕ используете ESLint и используете Visual Studio, вы можете перейти по адресу:

Сервис -> Параметры -> Текстовый редактор -> JavaScript / TypeScript -> Linting -> Общие.

Оттуда вы можете снять флажок «Включить ESLint» и проверить файл глобальной конфигурации для этого инструмента.

Я использую Visual Studio 2017 (15.8.4), чтобы найти это меню.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...