2014-10-06 11 views
12

es scheint, dass AngularJS einige internationalisierte Ressourcen einbetten:

Winkelstützen i18n/l10n für Datum, Zahlen- und Währungs Filter. Zusätzlich unterstützt Angular die Unterstützung für lokalisierbare Pluralisierung durch die ngPluralize-Direktive. Alle lokalisierbaren Angular-Komponenten hängen von länderspezifischen Regelsätzen ab, die vom $ locale-Dienst verwaltet werden.

Wenn die $locale service gefunden, aber nicht kwnow wie das Gebietsschema angeben, in fr-fr ...

Der folgende Code:

{{article.date_collected | date:'EEEE dd MMMM yyyy'}} 

Gibt:

Montag 06. Oktober 2014

Aber ich will:

Lundi 06 Octobre 2014

Irgendwelche Vorschläge?

Antwort

25

Schließlich fand ich die Antwort auf die Winkel Github Seite: https://github.com/angular/bower-angular-i18n#bower-angular-i18n

EDIT: weitere Informationen für das, was für mich gearbeitet

in Ihrem Root-App-Verzeichnis installieren Ressourcen von Bower

bower install angular-i18n 

Fügen Sie eine <script> zu Ihrer index.html zwischen diesen Kommentartags hinzu, wenn Sie bower/buildjs verwenden, um alle Ihre Skripte auf vendor.js zu komprimieren:

<!-- endbower --> 
<script src="bower_components/angular-i18n/angular-locale_fr-fr.js"></script> 
<!-- endbuild --> 

Das ist es. wie

+0

Könnten Sie ein Beispiel zu der hinzufügen Antworten? –

+0

Beispiel wäre gut. Ich konnte nichts hilfreiches hinter diesem Link finden. –

+0

immer noch kein Beispiel? es würde wirklich helfen! –

6

Anwendungsbeispiel, pro https://docs.angularjs.org/guide/i18n

1) das Gebietsschema erhalten Sie von dem Winkel Repo oder durch Bower benötigen, z.B. //raw.githubusercontent.com/angular/bower-angular-i18n/master/angular-locale_fr-fr.js

2) schließen Sie es nach der Winkelbibliothek ein, z.

<script src="vendor/angular.min.js"></script> 
<script src="vendor/angular-locale_fr-fr.js"></script> 

3) jetzt, wenn Sie ein Datum angezeigt werden Filter mit den ng Datum, es in Französisch-France sein wird, nicht US-Englisch-Format, zum Beispiel

{{date | date: 'fullDate'}} 

Es muss auch ein Weg, um programmatisch mehrere Einheimische zu behandeln, ist es auf der AngularJS Homepage „Biertheke“ Beispiel mit

angular.module('app-us', ['app', 'ngLocal.us']); 
angular.module('app-sk', ['app', 'ngLocal.sk']); 

und

<script src="//code.angularjs.org/1.4.4/i18n/angular-locale_sk.js"></script> 
<script> 
angular.module('ngLocal.sk', [])._configBlocks.push(angular.module('ngLocale')._configBlocks[0]); 
</script> 
<script src="//code.angularjs.org/1.4.4/i18n/angular-locale_en-us.js"></script> 
<script> 
angular.module('ngLocal.us', [])._configBlocks.push(angular.module('ngLocale')._configBlocks[0]); 
angular.bootstrap(document, ['ngRoute', 'homepage', 'ngLocal.us']); 
</script> 

Und hier getan ist Ein sauberer Weg, es zu tun: https://github.com/lgalfaso/angular-dynamic-locale