web-dev-qa-db-fra.com

tslint indique que les appels vers console.log ne sont pas autorisés - Comment puis-je autoriser cela?

Je viens de commencer à utiliser create-react-app avec TypeScript 

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

et la configuration par défaut de tslint.json n'autorise pas console.log ().

Comment puis-je (pour l'instant) activer console.log? 

Les documents pour cela sont à https://palantir.github.io/tslint/rules/no-console/ . Mais ils ne disent pas où mettre cette ligne:

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

J'ai cherché et trouvé ceci La syntaxe du fichier de configuration tslint.json , j'ai donc essayé ceci:

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

Pour essayer d’obtenir des messages de journal qui ne seraient que des avertissements… Mais cela ne fonctionnait pas.

J'ai commenté les quelques lignes console.log () que j'ai mais voudrai pouvoir le faire à l'avenir.

43
PatS

Ajoutez // tslint:disable-next-line:no-console dans la ligne juste avant vos appels à console.log pour éviter le message d'erreur une seule fois.

Si vous souhaitez désactiver entièrement la règle, ajoutez ce qui suit à votre tslint.json (le plus souvent dans votre dossier racine):

{
    "rules": {
        "no-console": false
    }
}
92
Christian Ivicevic

Pour ceux d'entre vous qui viennent ici avec une base de code mixte de javascript et de TypeScript.

Vous devrez peut-être définir l'option 'no-console' dans jsRules, objet de règles jslints pour les fichiers javascript, c'est-à-dire qu'il existe des objets de règles distincts pour javascript et TypeScript.

//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
  }
}
15
Lee Brindley

Selon les documents: https://eslint.org/docs/user-guide/getting-started#configuration

  • "off" ou 0 - désactive la règle 
  • "warn" ou 1 - active la règle en tant qu'avertissement (n'affecte pas le code de sortie) 
  • "error" ou 2 - active la règle sous forme d'erreur (le code de sortie sera 1)

Par ailleurs, votre configuration correcte serait

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

C'est la syntaxe correcte pour définir la règle de non-console (ou toute autre règle), mais uniquement avec un avertissement plutôt qu'une erreur (modifiez évidemment les options comme vous le souhaitez)

"no-console": {
    "severity": "warning",
    "options": [
        "log",
        "error",
        "debug",
        "info",
        "time",
        "timeEnd",
        "trace"
    ]
},
1
Liran H

Ajoutez ce qui suit à votre tslint.json

{
   "rules": {
      "no-console": {
         "severity": "warning",
      } 
   }
}
0
Liu Xuan