airbnb / airbnb/javascript

Consider allowing anonymous function expressions

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

Beschreibung

At the moment [you forbid](https://github.com/airbnb/javascript/blob/ea093e0373cc4dfa07c69ef7c75d81bd06bdf0c2/packages/eslint-config-airbnb/.eslintrc#L140) unnamed function expressions like `function() {}`. That’s a good thing.

But when using the new function bind syntax with **[trine](https://github.com/jussi-kalliokoski/trine)**-style [libraries](https://github.com/roobie/mori-ext), you can’t use arrow functions because they inherit `this` from the outer scope.

So a good old anonymous function expression:

``` js
[my, collection]::map(function() {
return !!this;
});
```

…often feels more natural than inventing obscure names:

``` js
[my, collection]::map(function justCastToBoolean() {
return !!this;
});
```

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit packages/eslint-config-airbnb/.eslintrc bei der verlinkten Regel um Zeile 140 und untersuche anschließend die umgebende Konfiguration zur Benennung von Funktionen sowie alle zugehörigen Dokumentationen zum Style Guide. Vergleiche ihr Verhalten bei gewöhnlichen anonymen Funktionen mit dem Beispiel zur bind-Syntax; abgeschlossen ist die Arbeit, wenn die beabsichtigte Ausnahme klar definiert ist und die relevante Konfiguration oder Dokumentation sie widerspiegelt.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
eslint, javascript
Bereich
tooling
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
30/100

Neue Issues direkt in Ihr Postfach

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