Web Analytics

prettier-plugin-classnames

⭐ 205 stars Italian by ony3000

🌐 Lingua

prettier-plugin-classnames

Un plugin di Prettier che suddivide nomi di classi verbosi in base all'opzione printWidth.

Un caso d'uso per questo plugin.

Installazione[^1]

npm install -D prettier prettier-plugin-classnames

[^1]: Se la tua versione di prettier-plugin-classnames è inferiore alla 0.4.0, sarà necessario installare anche @prettier/sync.

Configurazione

Esempio JSON:

{
  "plugins": ["prettier-plugin-classnames"]
}

Esempio JS (modulo CommonJS):

module.exports = {
  plugins: ['prettier-plugin-classnames'],
  customAttributes: ['myClassProp'],
  customFunctions: ['clsx'],
};

Esempio JS (modulo ES):

export default {
  plugins: ['prettier-plugin-classnames'],
  endingPosition: 'absolute',
};

Override Markdown/MDX

Questo plugin non supporta Markdown e MDX, ma se questo plugin supporta un linguaggio all'interno dei blocchi di codice (ad es. Vue), potrebbe verificarsi una formattazione indesiderata all'interno dei blocchi di codice.

Per evitare formattazioni indesiderate, puoi utilizzare delle impostazioni di override per Markdown e MDX.

Esempio JSON:

{
  "plugins": ["prettier-plugin-classnames"],
  "customFunctions": ["clsx"],
  "overrides": [
    {
      "files": [".md", ".mdx"],
      "options": {
        "plugins": []
      }
    }
  ]
}

Opzioni

Attributi Personalizzati

Elenco degli attributi che racchiudono i nomi delle classi.
Gli attributi class e className sono sempre supportati, anche se non vengono specificate opzioni.

Default | Sostituzione CLI | Sostituzione API --- | --- | --- [] | --custom-attributes | customAttributes: [""]

Funzioni Personalizzate

Elenco delle funzioni che racchiudono i nomi delle classi.
La funzione classNames è sempre supportata, anche se non vengono specificate opzioni.

Default | Sostituzione CLI | Sostituzione API --- | --- | --- [] | --custom-functions | customFunctions: [""]

Posizione Finale

Disponibile per la prima volta dalla versione v0.5.0.
absolute-with-indent è stato aggiunto nella versione v0.6.0.
absolute-with-indent è stato rimosso nella versione v0.8.0, ma puoi ottenere lo stesso risultato con absolute.
Il valore predefinito è cambiato da relative a absolute nella versione v0.8.0.

Questo è il criterio per terminare il nome della classe su ogni riga quando si sostituisce il nome della classe originale con un nome classe su più righe.

  ------------------------------------------------------------| printWidth=60
  export function Callout({ children }) {
    return (
      
{children}
); } ``

  • esempio di relative:
` ------------------------------------------------------------| printWidth=60 export function Callout({ children }) { return (
{children}
); }
`

Predefinito | Override CLI | Override API --- | --- | --- "absolute" | --ending-position | endingPosition: ""

Trasformazione della Sintassi

Disponibile per la prima volta nella versione v0.7.7.

Se si verifica un ritorno a capo in un nome di classe scritto in sintassi non-espressione, esso viene trasformato in sintassi espressione. Questa trasformazione non supporta la formattazione reversibile.

Predefinito | Override CLI | Override API --- | --- | --- false | --syntax-transformation | syntaxTransformation:

Larghezza di Stampa dei Nomi Classe

Disponibile per la prima volta nella versione v0.10.0.

Specifica la larghezza di stampa del nome della classe. Se non viene fornito alcun valore, viene utilizzato come predefinito il valore di printWidth.

Predefinito | Override CLI | Override API --- | --- | --- undefined | --classnames-print-width | classnamesPrintWidth:

Correlazione della versione con plugin correlati

A partire dalla versione 0.6.0, quando c’è un rilascio minore da una parte, intendo riflettere tale modifica anche dall’altra parte se possibile.

Correlazione delle versioni.

Compatibilità con altri plugin Prettier

Se più di un plugin Prettier può gestire il testo che vuoi formattare, Prettier utilizzerà solo l’ultimo di questi plugin.

In questo caso, puoi configurarlo come segue aggiungendo prettier-plugin-merge per applicare quei plugin in sequenza.

Esempio JSON:

json { "plugins": [ "prettier-plugin-tailwindcss", "prettier-plugin-classnames", "prettier-plugin-merge" ] } ``

Stargazers over time

Stargazers over time

--- Tranlated By Open Ai Tx | Last indexed: 2026-06-03 ---