Je veux obtenir ce format En USD: 1.123.362,32 et ce format en euro: 1.122.363.33 J'ai utilisé AngularJS Filter "currency" qui formate un nombre dans un format monétaire mais sans séparateurs comme "," "."

-1
hayfa chabbouh 5 janv. 2016 à 11:46

2 réponses

Meilleure réponse

Utilisez un filtre

ici est un lien vers la documentation où vous pouvez voir un exemple.

Vous devez utiliser le filtre de devises pour obtenir l'effet souhaité. ça devrait ressembler à ça

HTML

{{ currency_expression | currency : symbol : fractionSize}}

JS

$filter('currency')(amount, symbol, fractionSize)

Pour ce faire avec le bon, ou. vous devez avoir sélectionné le bon format de devise.

Math.round ()

À l'intérieur de votre contrôleur lorsque vous définissez la portée, assurez-vous de faire Math.round () pour que le nombre que vous retournez soit toujours entier.

Exemple

Math.round(2.5);

Alternativement

Si le filtre de devise ne répond pas à vos exigences, vous pouvez toujours utiliser le format numérique fourni par Angular, Doc sont ici

HTML

{{ number_expression | number : fractionSize}}

JS

$filter('number')(number, fractionSize)

Si tout le reste échoue

Créez votre propre filtre personnalisé ici est un tutoriel sur la façon de créer votre propre filtre personnalisé en angulaire, puisque vos besoins sont un peu étranges, vous devriez envisager de créer votre propre filtre pour y répondre. De cette façon, vous pouvez définir votre, ou. et tout ce qui précède ou suit votre numéro.

C'est certainement plus difficile que d'utiliser la fonctionnalité intégrée, mais comme vous ne pouvez pas la faire correspondre avec l'une des méthodes ci-dessus, je prendrais cette voie.

0
Joe Lloyd 5 janv. 2016 à 09:36

Le filtre de devise angularjs ne traite pas la virgule en USD et le point en euro .... J'ai utilisé kendo ui comme le filtre en grille, il traite tous les événements: kendo.toString (236, 'c', fr-FR); espérons que nous trouverons une solution complète avec angularjs.

0
hayfa chabbouh 7 janv. 2016 à 09:12