2017-11-13 5 views
0

Ich möchte den Übersetzungsschlüssel nicht in der JSON-Datei verwenden. Ich möchte die Datei nur zwei Ebenen haben, ich meine, ich will nicht die Übersetzung Schlüssel auf jedem locale-Datei enthalten:Wie kann ich den Übersetzungsschlüssel von en.json entfernen?

{ 
    "translation": { 
    "sidebar": { 
     "dashboard": "Dashboard", 
     "clients": "Clients", 
     "coaches": "Coaches", 
     "candidates": "Candidates", 
     "trackList": "Track List", 
     "reports": "Reports" 
    }, 
    "clients": { 
     "clients": "Clients", 
     "companyName": "Company Name", 
     "previous": "Previous", 
     "next": "Next" 
    } 
    } 
} 

Dies ist meine i18n.js-Datei, die i18next initialisiert.

import angular from 'angular'; 
import ngSanitize from 'angular-sanitize'; 
import i18next from 'i18next'; 
import ngI18next from 'ng-i18next'; 
import enLocale from './locales/en.json' 

const module = angular.module('app.i18n', [ngSanitize, ngI18next]); 

module 
    .config(function() { 

    window.i18next = i18next; 

    i18next.init({ 
     debug: true, 
     lng: 'en', 
     fallbackLng: false, 
     resources: { 
     en: enLocale 
     }, 
     useCookie: false, 
     useLocalStorage: false 
    }, function(err, t) { 
     console.log('i18next was initialized'); 
     console.log(t('global.clients')); 
     console.log(t('global.addNewClient')); 
    }); 

}); 
export default module.name; 

Antwort

0

Entfernen Sie die Übersetzung von Ihrem Json und versuchen Sie es. Es sollte standardmäßig funktionieren. Wenn nicht festgelegt.

Wenn STill nicht funktioniert. Erstellen Sie eine neue Json-Variable, um sie an Ressourcen zu übergeben.

import enLocale from './locales/en.json' 
const enLocaleData = {"en":{"transalation":enLocale["en"] }}; 

i18next.init({ 
     debug: true, 
     lng: 'en', 
     resources: { 
     en: enLocaleData 
     }); 

Auf diese Weise werden Sie in der Lage sein json mit zwei Ebenen passieren.

{ 
"en": 
    { 
    "key":"keyValue", 
    "key2":"keyValue2", 
    } 
} 

Hoffe, es hilft .. :)

Verwandte Themen