airbnb / airbnb/javascript

`if` statements – one line vs. one expression

Offen
#445 5 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
needs eslint rule change/addition question
Vorherrschende Sprache
JavaScript
Sterne
148k
Forks
26.6k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Until I started using ESLint with your configuration I saw nothing against the rules in this:

``` js
$ cat if.js
const [one, two] = [1, 2];

if (one !== two) throw new Error(
'One does not equal two'
);
```

But ESLint does:

``` sh
$ eslint if.js

if.js
3:0 error Expected { after 'if' condition curly

✖ 1 problem (1 error, 0 warnings)
```

Is this intended? In my opinion the pattern I’ve been using is explicit – and more readable than this:

``` js
if (one !== two) {
throw new Error(
'One does not equal two'
);
}
```

The parens form a visual brace-like block much like in #438.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Der Bericht nennt ESLints `curly`-Regel und die Konfiguration des Projekts, mit einem Vergleich zur Version mit geschweiften Klammern und einem Verweis auf #438. Beginne damit zu prüfen, wie `curly` konfiguriert ist und wie der Styleguide einzeilige `if`-Anweisungen behandelt; abgeschlossen ist die Aufgabe, wenn entschieden wurde, ob die aktuelle Regel beabsichtigt ist, und diese Richtlinie entsprechend dokumentiert oder geändert wurde.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
eslint, javascript
Bereich
documentation, tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.