71 votes

Erreur TSLint "Dépasse la longueur de ligne maximale de 120"

Dans mon application Angular2, j'importe un composant comme celui-ci:

 import { PersonsSingleAccountComponent} from 
   '../persons-information/fragments/persons-single-account/persons-single-account-bookings/persons-single-account-bookings.component'
 

Cela me donne l'erreur de charpie "Dépasse le caractère de ligne maximum". Si j'essaie de donner la déclaration dans `` (backtick), cela génère une erreur.

Comment puis-je résoudre cette erreur de peluches?

96voto

Maxime Points 1054

Ce n'est pas vraiment quelque chose que vous pouvez changer, pas lié à votre code.

Vous devez simplement désactiver la règle pour cette importation en ajoutant un commentaire avant:

 // tslint:disable-next-line:max-line-length
import { PersonsSingleAccountComponent} from '../persons-information/fragments/persons-single-account/persons-single-account-bookings/persons-single-account-bookings.component'
 

62voto

jowey Points 459

Il est une autre façon de résoudre ce problème.

Depuis la version 5.9.0 TSLint max-longueur de la ligne de la règle fournit un support pour ignorer les modèles.

tslint.json:

<!-- language: lang-json -->

{
  "rules": {
    "max-line-length": [
      true, 
      {
        "limit": 120, 
        "ignore-pattern": "^import [^,]+ from |^export | implements"
      }
    ],
  } 
}

Cette règle va ignorer les lignes suivantes:

<!-- language: typescript -->

import { SomeLongInterfaceName } from '../../../nested/directory/structure/target';
class MyClass implements SomeLongInterfaceName, OnInit, OnDestroy, OnViewChange {}
export { MyClass, SomeLongInterfaceName };

Les crédits vont à DanielKucal.

Pour la question de l'OP, à l'aide de ^import [^,]+ from serait assez pour ignorer longtemps les importations.

À mon humble avis c'est une meilleure approche, car il est moins intrusif qu'modifiant la TSLint la règle pour l'ensemble du projet et n'a pas d'odeur de code que si vous désactivez TSLint les règles dans chaque fichier avec un commentaire.

25voto

iweber Points 26

Il y a un autre moyen de se débarrasser de cette erreur - modifier tslint règles pour l'ensemble du projet.

Dans mon cas, j'ai eu un projet existant avec des centaines de lignes de dépassement de la limite. En fait, le code est plus clair de cette façon, parce que c'était fondamentalement un tableau d'objets. Mais VS Code a attiré un liséré rouge sur l'ensemble du fichier, ce qui rend difficile à lire.

Ce que j'ai fait: "max-line-length": [ false ] .

Vous pouvez également modifier la longueur en écrivant "max-line-length": [ true, 240 ], qui va produire le même résultat.

Voici un exemple de tslint.json que j'ai droit:

{
    "extends": "../tslint.json",
    "rules": {
        "directive-selector": [
            true,
            "attribute",
            "app",
            "camelCase"
        ],
        "component-selector": [
            true,
            "element",
            "app",
            "kebab-case"
        ],
        "max-line-length": [ false ],
    }
}

Aussi, s'il vous plaît, la caisse ce lien pour plus de paramètres avancés.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X