13 Punkte von haenah 2025-02-10 | Noch keine Kommentare. | Auf WhatsApp teilen

Da die sort-keys-Regel von eslint nicht auto-fixable ist, sind auf npm Plugins beliebt, die diese Funktion mit Auto-Fix ergänzen, etwa eslint-plugin-sort-keys-fix oder eslint-plugin-sort-destructure-keys; sie kommen jeweils auf mehr als 330.000 bzw. 190.000 wöchentliche Downloads. Diese beiden Plugins haben jedoch Probleme.
Im Fall von sort-keys-fix wurde eslint geforkt und angepasst; da beim Fixen durch Vertauschen auf der property-Node-Ebene gearbeitet wird (Code), ergibt sich eine Zeitkomplexität von O(N^2), wodurch Korrekturen lange dauern. Bei sort-destructure-keys gibt es wiederum viele doppelte Berechnungen im Vergleichsprozess (Code), was ebenfalls Zeit kostet.
Daher wurde eslint-plugin-sort-properties entwickelt, um diese Probleme zu lösen. Die wichtigsten Funktionen sind folgende:

  1. Beim Fix wird Array.prototype.sort verwendet, wodurch sich die Zeitkomplexität verbessert; etwa 10-mal schneller als sort-keys-fix
  2. Die Regelanwendung ist mehr als 50-mal schneller als bei sort-destructure-keys
  3. Auch TypeScript Type Literals und Interfaces können sortiert werden (tseslint-Parser muss explizit angegeben werden)
  4. Die Funktion aus der jsx-sort-props-Regel von eslint-plugin-react, Callback-Props nach hinten zu verschieben, wurde übernommen
  5. Kommentare können so konfiguriert werden, dass sie als Teil einer Property mitverschoben werden, um Beschädigungen zu vermeiden
    Für die Methode der Geschwindigkeitsmessung gibt es im Benchmark eine Referenz.

Noch keine Kommentare.

Noch keine Kommentare.