在 AngularJS 中将货币从美国转换为英国



我尝试显示此代码,但我需要AngularJS自动转换货币:

 <div ng-controller="ctrl">
  default currency symbol ($): {{0.00 | currency}}
  custom currency symbol (£): {{0.00 | currency:"£"}}
 </div>
 <script src="index.js"></script>
 <script src="uk-locale.js"></script>

正如@Andrey所说,您应该构建自己的自定义过滤器来处理货币转换。
以下是我如何构建这样的东西的简单演示:

angular.module('myModule').filter('currency', function() {
    var defaultCurrency = '$';
    return function(input, currencySymbol) {
        var out = "";
        currencySymbol = currencySymbol || defaultCurrency;
            switch(currencySymbol) {
                case '£':
                    out = 0.609273137 * input; // google
                    break;
                default: 
                    out = input;
            }
        return out + ' ' + currencySymbol;
    }
});

查看在线演示

AngularJs currencyFilter 只是格式化输出。例如,如果要实际转换货币,则需要创建自定义过滤器。

以下是可能的示例:

angular.module('myFilter', []).filter('currencyConverter', [function() {
   function convert(inputValue, currecyId) {
       // Your conversion code goes here
   }
   return function(inputValue, currencyId) {
      return convert(inputValue, currencyId);
   }
});

最新更新