Vorkonfigurierte Komponentenbibliotheken
Erörtert vordefinierte Zuordnungen für mehrere beliebte Komponentenbibliotheken im Axe DevTools Linter
Axe DevTools Linter bietet integrierte Unterstützung für mehrere beliebte Komponentenbibliotheken. Wenn aktiviert, wird die Verwendung der Komponenten dieser Bibliotheken auf Barrierefreiheit getestet, genauso wie native HTML-Elemente.
Einführung
Die Komponenten, die von den folgenden Paketen definiert sind, werden derzeit unterstützt:
| NPM-Paketname | Weitere Informationen |
|---|---|
| @deque/cauldron-react | Cauldron React: Barrierefreie Komponentenbibliothek |
| @mui/material | Material UI |
| react-native | React Native |
Die vorkonfigurierte Komponentenbibliothek für Material UI umfasst nicht alle in Material UI definierten Komponenten; sie umfasst nur diejenigen, die im @mui/material-Paket definiert sind.
Um die Bibliothekskomponentenüberprüfung zu aktivieren, fügen Sie den NPM-Paketnamen der Bibliothek dem global-libraries-Array in Ihrem axe-linter.yml-Datei hinzu:
global-libraries:
- '@mui/material'In YAML müssen Zeichenfolgen, die mit @ beginnen, in Anführungszeichen eingeschlossen werden, da @ ein reserviertes Zeichen ist.
Oder die äquivalente JSON-Konfiguration (für den REST-Dienst) wird unten gezeigt:
{
"config": {
"global-libraries": [
"@mui/material"
]
}
}Jede Komponente mit demselben Namen wie eine Komponente aus der globalen Bibliothek wird als diese Bibliothekskomponente behandelt, was das Wiederexportieren und Neudeklarieren von Komponenten ermöglicht, ohne deren Zuordnung zu verlieren.
Cauldron React
Cauldron React Version 4.7.0 und neuer wird derzeit unterstützt.
Cauldron React-Konfiguration
Um die Cauldron-Zuordnungen mit der Axe Accessibility Linter-Erweiterung für VS Code oder der JetBrains-Plugin zu verwenden, fügen Sie die folgenden Zeilen in Ihre axe-linter.yml-Datei ein:
global-libraries:
- '@deque/cauldron-react'Cauldron-Beispiel
Das folgende Beispiel zeigt ein Cauldron-Button-Element ohne Textinhalt, was einen Barrierefreiheitsfehler darstellt:
<Button></Button>In Ihrer IDE (VS Code wird angezeigt), nachdem Sie die Cauldron-Bibliothek in Ihrer Konfiguration aktiviert haben, sehen Sie einen Fehler wie den folgenden:
Material UI
Material UI Version 5.11.15 und neuer wird derzeit unterstützt.
Die vordefinierten Zuordnungen umfassen nur die im @mui/material-Paket definierten Komponenten, nicht alle in Material UI definierten Komponenten.
Material UI-Konfiguration
Um die Material UI-Zuordnungen mit der Axe Accessibility Linter-Erweiterung für VS Code oder der JetBrains-Plugin zu verwenden, fügen Sie die folgenden Zeilen in Ihre axe-linter.yml-Datei ein:
global-libraries:
- '@mui/material'Material UI-Beispiel
Das folgende Beispiel zeigt einen Barrierefreiheitsfehler, bei dem aria-colindex fälschlicherweise mit der Material UI-Komponente ImageList verwendet wird:
<ImageList aria-colindex="1"/>In Ihrer IDE (VS Code wird angezeigt), sehen Sie diese Fehlermeldung:
Wenn Sie die global-libraries-Option nicht auf '@mui/material' in Ihrer Konfigurationsdatei setzen, wird dieser Fehler nicht angezeigt.
Barrierefreiheitsattribute, die Sie mit dem inputProps-Attribut auf Material UI-Eingabeelementen festlegen, werden derzeit ignoriert.
React Native
React-Native-Konfiguration
Um die Cauldron-Mappings mit dem Axe Accessibility Linter-Erweiterung für VS Code oder dem JetBrains-Plugin zu verwenden, fügen Sie die folgenden Zeilen zu Ihrer axe-linter.yml-Datei hinzu:
global-libraries:
- react-nativeWeitere Dokumentationen zur Verwendung der React-Native-Mappings finden Sie im Abschnitt Benutzerdefiniertes Komponenten-Linting für React Native.
Siehe auch
Konfiguration des Axe DevTools Linters
Benutzerdefinierte Komponenten und die VS Code-Erweiterung oder das JetBrains-Plugin


