Piégé

Code Javascript, sept. 2015
Code Javascript

Depuis longtemps déjà j’utilise l’extension jshint dans mes éditeurs (Sublime Text et Visual Code Studio) pour me guider sur le développement dans ce langage ; il faut dire qu’historiquement je n’étais vraiment pas du tout à l’aise avec lui, même si depuis j’ai acquis pas mal d’expérience — il m’en reste beaucoup à voir, cela dit.

Assez récemment j’ai aussi installé l’extension eslint qui à l’air plus utilisée que la précédente.

Et puis j’ai commencé, il y a quelques jours, à vraiment m’intéresser aux classes javascript et je bloquais sur un truc qui me semblait parfaitement défini dans les docs officielles et aussi bien supporté dans les navigateurs récents : la possibilité de définir des propriétés en plus des méthodes dans les classes.

À chaque fois que je tentais d’ajouter une propriété dans une classe, j’avais droit à un message de chacune des extensions m’indiquant que « Nan nan, spa autorisé ça ! » :

class debugClass {
    field = null;

    constructor() {
      this.debug = true;
    }

    dump() {
      console.log(this.debug);
    }
  }

Tu vois la 2e ligne, où je déclare une propriété publique field initialisée à null ? Eh bien les deux linters (extensions) me disait que c’était pas bien.

En fait c’était, pour eslint, un simple problème de configuration où je n’avais pas précisé que je voulais utiliser du javascript récent ; quand à jshint, pas moyen de lui faire entendre raison, à tout le moins de façon simple.

Je pense que je vais simplement supprimer l’extension jshint, qui semble faire double emploi avec eslint !

Ajouter un commentaire

Les champs suivis d'un * sont obligatoires

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/15170

Haut de page