Tslint: Support else / catch sur la ligne suivante

Créé le 15 août 2013  ·  11Commentaires  ·  Source: palantir/tslint

Il devrait être possible d'imposer la position des en-têtes de bloc de fin comme les instructions else/catch :

Actuellement, il est prévu :

if (myVar) {
    //...
} else {
    //...
}

Sinon, vous obtenez l'avertissement « misplaced else ».

Mais nous voulons que le bloc de fin soit remplacé par une ligne comme celle-ci : :

if (myVar) {
    //...
}
else {
    //...
}

Ou pour essayer/attraper

try {
    //..
}
catch (e) {
    //..
}
finally {
    //..
}

Et toutes les autres structures similaires.

Nous trouvons qu'il est plus facile à lire car le mot-clé est serré sur la marge gauche et la position de l'accolade fermante impose une ligne presque vierge, tout comme dans le bloc de départ.

Formatting rule Enhancement

Commentaire le plus utile

Permettez-moi de préciser :

J'aimerais une règle qui vérifie si les accolades sont sur la ligne suivante et qui se plaint si elles sont sur la même ligne.

Autant que je sache, il n'y a aucun moyen de faire respecter cela.

Tous les 11 commentaires

Je peux l'activer avec la règle oneline .

Je pense qu'il devrait être divisé selon sa propre règle: ce n'est pas la même chose que "l'accolade ouvrante d'une ligne pour être sur la même ligne que l'expression qui la précède".

bien sûr, a du sens.

rendu toutes les vérifications facultatives, corrigé par 5cd203aa3c4b2de96c8a33d8107e9a8444aa4348

Ce serait formidable si les appareils dentaires de la prochaine ligne étaient également une règle. Le résoudre en ignorant la règle "une ligne" n'est pas idéal.

Peux-tu nous donner un exemple de ce que tu veux dire, @eirikhm ? Si vous voulez que vos accolades soient sur la ligne suivante, pourquoi voulez-vous que la règle sur une ligne soit activée ?

Permettez-moi de préciser :

J'aimerais une règle qui vérifie si les accolades sont sur la ligne suivante et qui se plaint si elles sont sur la même ligne.

Autant que je sache, il n'y a aucun moyen de faire respecter cela.

Existe-t-il un moyen d'imposer le contraire de check-else ? Je veux appliquer le style suivant :

if (expr) {
    // code
}
else {
    // code
}

et restreignez le style suivant :

if (expr) {
    // code
} else {
    // code
}

EDIT - cela peut être accompli avec tslint-eslint-rules

D'accord, pourquoi ne pas ajouter l'inverse pour forcer les blocs à leur propre ligne ?

Existe-t-il un moyen d'imposer le contraire de check-else ? Je veux appliquer le style suivant :

if (expr) {
    // code
}
else {
    // code
}

et restreignez le style suivant :

if (expr) {
    // code
} else {
    // code
}

C'est une exigence très courante - je viens de découvrir que ce n'est pas pris en charge dans tslint et je suis un peu surpris... Je pensais que c'était exactement le genre de chose pour lequel tslint était destiné ?

@sam-s4s voir #4534

Aww c'est presque un peu triste :( lol

Cette page vous a été utile?
0 / 5 - 0 notes