tslint говорит, что вызовы console.log не разрешены - как мне это разрешить?

Я просто начал использовать приложение create-react-app с машинописным текстом

create-react-app my-app --scripts-version=react-scripts-ts

и настройка tslint.json по умолчанию не позволяет console.log().

Как я могу (на данный момент) включить console.log?

Документы для этого находятся на странице https://palantir.github.io/tslint/rules/no-console/. Но они не говорят, где поставить эту строку:

    "no-console": [true, "log", "error"]

Я искал и нашел этот синтаксис файла конфигурации tslint.json, поэтому я попробовал это:

"rules": {
    "no-console": [true, "warning"]
}

В попытке получить сообщения журнала, которые будут просто предупреждениями. Но это не сработало.

Я прокомментировал несколько строк console.log(), которые у меня есть, но хочу иметь возможность сделать это в будущем.

Ответ 1

Добавьте //tslint:disable-next-line:no-console в строке прямо перед вашими вызовами в console.log чтобы предотвратить сообщение об ошибке только один раз.

Если вы хотите отключить правило, полностью добавьте следующее в tslint.json (скорее всего, в корневую папку):

{
    "rules": {
        "no-console": false
    }
}

Ответ 2

Для тех из вас, кто приехал сюда со смешанной кодовой базой javascript и машинописного текста, вам может потребоваться определить параметр "no-console" в jsRules, jslints для объекта правил для файлов javascript, то есть существуют отдельные объекты правил для javascript и машинописных текстов.

//tslint.json

{
  "extends": ["tslint:recommended", "tslint-react", "tslint-config-prettier"], //Example... 
  "rules": {
    "no-console": false //Disable for typescript
  },
  "jsRules": {
    "no-console": false //Disable for javascript
  }
}

Ответ 3

Согласно документам: https://eslint.org/docs/user-guide/getting-started#configuration

  • "off" или 0 - выключить правило
  • "warn" или 1 - включить правило в качестве предупреждения (не влияет на код выхода)
  • "ошибка" или 2 - включить правило как ошибку (код выхода будет 1)

Кстати, ваша правильная настройка была бы

{
  "rules": {
    "no-console": false
  }
}