2015-08-04 16 views

Odpowiedz

12

Nie musisz zadzierać ze źródłem Angular ani zmieniać ustawień regionalnych na inne. Nie musisz nawet pisać do tego niestandardowego filtra. wystarczy zmienić NUMBER_FORMATS.GROUP_SEP usługi locale dolarów co trzeba:

$locale.NUMBER_FORMATS.GROUP_SEP = ' '; 
$scope.price = 100000; 

Ale to lepiej zrobić to w bloku wykonywania, a następnie w kontrolerze.

angular.module('demo', []).controller('MainCtrl', function($scope, $locale) { 
 
    $locale.NUMBER_FORMATS.GROUP_SEP = ' '; 
 
    $scope.price = 100000; 
 
});
<script src="https://code.angularjs.org/1.4.3/angular.js"></script> 
 

 
<div ng-app="demo" ng-controller="MainCtrl"> 
 
    {{ price | number }}  
 
</div>

+0

Czy na pewno w bloku uruchomić? Nie w konfiguracji pierwszej? – Alliswell

+0

W każdym razie to działa. Chyba najlepsza odpowiedź. Dzięki stary. – Alliswell

+2

Ponieważ $ localeProvider nie eksponuje tych właściwości, więc nie można ich tak łatwo zresetować w bloku konfiguracji. Lepiej powiedzieć: ponieważ moduł ngLocale tworzy '$ locale', które jest wartością (nie dostawcą lub stałą), więc nie jest dostępne w bloku konfiguracji. – dfsq