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

时间:2014-01-07 14:09:14

标签: 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>

2 个答案:

答案 0 :(得分:4)

正如@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;
    }
});

检查online demo

答案 1 :(得分:1)

AngularJs currencyFilter只是格式化输出。如果您想要实际转换货币,则需要自定义filter,例如。

以下是可能的例子:

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

   return function(inputValue, currencyId) {
      return convert(inputValue, currencyId);
   }
});