airbnb / airbnb/javascript

Reconsider capIsNew: false for new-cap

Aperta
#2,200 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub
question
Lingua principale
JavaScript
Stelle
148k
Fork
26.6k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

With `eslint-config-airbnb-base@8.0.0` the code
```js
class Example {}
module.exports = Example();
```
would result in the error:

example.js:2:18: A function with a name starting with an uppercase letter should only be used as a constructor. [Error/new-cap]

As a result of #1090, which set `capIsNew: false` for `new-cap`, this is no longer the case.

https://github.com/airbnb/javascript/issues/1089#issuecomment-249409624 which motivated the change only mentions adding `"capIsNewExceptions": ["Immutable.Map", "Immutable.Set", "Immutable.List"]`. Would it make sense to revert `capIsNew: false` (and perhaps adopt `"capIsNewExceptionPattern": "^Immutable.\\w"` as suggested in #1106) or was there another rationale for setting `capIsNew: false`?

Thanks,
Kevin

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Inizia esaminando la modifica alla configurazione di new-cap da #1090 e la motivazione nel relativo issue di Airbnb, quindi riproduci l’esempio mostrato di classe e chiamata di funzione con eslint-config-airbnb-base@8.0.0. Confronta il ripristino di capIsNew con l’uso di capIsNewExceptions o capIsNewExceptionPattern e considera la proposta correlata in #1106. Il lavoro è completato quando il comportamento previsto e la configurazione sono concordati e coperti dai controlli pertinenti del progetto.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
eslint, javascript
Ambito
tooling
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.