Ich habe einige Datums-ISO-Zeichenfolgen, die ich in menschenlesbare Daten formatieren möchte. Ich verwende die Bibliothek angular-moment, um diese Daten in meiner Vorlage mithilfe eines Filters zu formatieren.Globale Variablen in Winkeln
<span>{{ $ctrl.date | amCalendar:referenceTime:formats }}</span>
Ich möchte das Format des Datums an die folgende Anzeige anpassen:
const dateFormats = {
relative: {
sameDay: '[Today at] LT',
lastWeek: 'DD MMM, YYYY [at] LT',
sameElse: 'DD MMM, YYYY [at] LT'
}
}
Also ich dies in meiner Vorlage tun können:
<span>{{ $ctrl.date | amCalendar:null:dateFormats }}</span>
Allerdings möchte ich diese dateFormats
irgendwo in der Welt zu leben, anstatt ausschließlich innerhalb des Controllers dieser Komponente, da ich in der Lage sein möchte, diese dateFormats
in anderen Vorlagen auf der ganzen Linie zu verweisen.
Würde dies als richtiger Anwendungsfall für die Verbindung dateFormats
mit $scope
gelten oder gibt es einen besseren Weg, damit umzugehen?
Jede Hilfe wird geschätzt. Danke im Voraus!
können Sie Konstante verwenden (was ein Singleton ist) this.refer diesem Link [link] zu tun (https://ilikekillnerds.com/ 2014/11/constants-values-global-variables-in-angularjs-the-right-way /)] –
Schauen Sie sich [diese Antwort] (http://stackoverflow.com/a/42876416/4131048) dort an Es ist nicht notwendig, einen benutzerdefinierten Filter zu erstellen. Sie können 'amCalendar' in Ihrer 'run'-Funktion anpassen, wie in der [Docs] (https://github.com/urish/angular-moment#usage) – VincenzoC
S beschrieben Ich hätte die Unterlagen durchsehen müssen. Das ist noch besser. Wenn Sie das als Antwort hinzufügen, akzeptiere ich. – realph