Änderung: Verbesserung der Sprachenerkennung und -verwaltung
Änderungen: - Erweiterung der Logik zur Erkennung der Browsersprache in main.js und im Store, um auch spezifische deutsche Dialekte und Länder zu berücksichtigen. - Implementierung einer Überwachung der Sprachänderungen im Store, die die i18n-Konfiguration entsprechend aktualisiert. Diese Anpassungen verbessern die Benutzererfahrung durch präzisere Sprachenerkennung und dynamische Anpassung der Sprache in der Anwendung.
This commit is contained in:
@@ -9,12 +9,38 @@ import * as components from 'vuetify/components';
|
||||
import * as directives from 'vuetify/directives';
|
||||
|
||||
function getBrowserLanguage() {
|
||||
// Prüfe zuerst die bevorzugte Sprache
|
||||
const browserLanguage = navigator.language || navigator.languages[0];
|
||||
|
||||
// Deutschsprachige Länder: Deutschland, Österreich, Schweiz, Liechtenstein
|
||||
const germanSpeakingCountries = ['de', 'at', 'ch', 'li'];
|
||||
|
||||
// Prüfe ob die Sprache mit 'de' beginnt (deutsch)
|
||||
if (browserLanguage.startsWith('de')) {
|
||||
return 'de';
|
||||
} else {
|
||||
return 'en';
|
||||
}
|
||||
|
||||
// Prüfe alle verfügbaren Sprachen für deutschsprachige Länder
|
||||
const allLanguages = navigator.languages || [navigator.language];
|
||||
for (const lang of allLanguages) {
|
||||
// Prüfe auf de-XX Format (z.B. de-DE, de-AT, de-CH, de-LI)
|
||||
if (lang.startsWith('de-')) {
|
||||
const countryCode = lang.split('-')[1]?.toLowerCase();
|
||||
if (germanSpeakingCountries.includes(countryCode)) {
|
||||
return 'de';
|
||||
}
|
||||
}
|
||||
// Prüfe auch auf direkte Länderkennung (z.B. de_AT, de_CH)
|
||||
if (lang.startsWith('de_')) {
|
||||
const countryCode = lang.split('_')[1]?.toLowerCase();
|
||||
if (germanSpeakingCountries.includes(countryCode)) {
|
||||
return 'de';
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Fallback: Englisch für alle anderen Sprachen
|
||||
return 'en';
|
||||
}
|
||||
|
||||
const vuetify = createVuetify({
|
||||
|
||||
Reference in New Issue
Block a user