Skip to content

$i18n.getLabel

Description

Retourne la valeur du libellé indiqué, selon la locale actuelle.

Syntaxe

$i18n.getLabel( key [ , options ] )

Paramètres

key string
Nom du libellé à récupérer
options map

Map d'options. Les options reconnues sont:

arguments string / array

Arguments du libellé référencé par key. Les arguments passés au message permettent de substituer les références du genre {0}, {1}, etc. du message par les valeurs correspondantes de la propriété.

L'utilisation d'arguments nécessite que le message soit valide. Se référer à la documentation de MessageFormat pour connaître les possibilités.

Un exemple d'uilisation des arguments est donné plus bas.

defaultValue string
Valeur par défaut à retourner si le libellé n'existe pas
bundle string

Nom du bundle de ressource dans lequel récupérer le libellé.

Peut être null ou vide, auquel cas le libellé sera récupéré à partir du bundle défini dans la propriété bundles.descriptBundle du fichier de configuration (ou descript si la propriété n'est pas définie).

locale string
Nom de la locale. Si non défini, la méthode s'appuie sur la locale du thread courant.
raw boolean
Flag true/false permettant de demander le libellé brut, sans substitution des références de variables du genre ${xxx}.

Retour

Voir description.

Exemple

Exemple basique

1
2
$i18n.getLabel("property.domain.admin.label");
$i18n.getLabel("property.domain.admin.label", { locale: "en" });

Exemple avec arguments

Pour cet exemple, on suppose que l'entrée suivante est enregistrée dans le bundle "sample" (donc dans des fichiers "sample_fr.properties", "sample_de.properties", etc.) dans le sous-dossier i18n de l'application.

message.limite.date = La date {0} n''est pas valide. Elle doit être comprise \
    entre {1} et {2}.

On peut ainsi passer l'instruction suivante:

1
2
3
4
5
6
7
8
9
// on définit une date pour l'exemple
var madate = $cal.date("1900-01-01");

$logger.info(
    $i18n.getLabel("message.limite.date",
                   { bundle: "sample",
                     arguments: [ $cal.format(madate, "dd/MM/yyyy"),
                                  "01/01/2000",
                                  $cal.format($cal.date(), "dd/MM/yyyy") ] }));

Cela affiche le texte suivant pour une locale "fr":

La date 01/01/1900 n'est pas valide. Elle doit être comprise entre 01/01/2000 et 15/01/2025.