2015-07-21 129 views
0

我在ui-grid的自定義過濾器內使用貨幣過濾器來格式化單元格數據。請在下面找到我的代碼。angularjs - 刪除貨幣過濾器括號

HelperServices.filter('getQuantFormat', function($filter) { 
    return function(val) { 
     if (val == 0) 
      return; 
     else 
      return ($filter('currency')(val, "", 2)); 
    } 
}); 

此處貨幣過濾器爲負值添加括號。我想使用沒有括號的貨幣過濾器來計算負值。

如何從貨幣過濾器中刪除括號?

+1

也許,通過使用'.replace(/ [()]/g,'')'? –

回答

4

我建議你寫一個customCurrency過濾器。其中負責照顧負面的價值。像下面這樣:

var app = angular.module('myApp'); 

app.filter('customCurrency', ["$filter", function ($filter) {  
    return function(amount, currencySymbol){ 
     var currency = $filter('currency');   

     if(amount < 0){ 
      return currency(amount, currencySymbol).replace("(", "-").replace(")", ""); 
     } 

     return currency(amount, currencySymbol); 
    }; 
}]); 

因此,只要您的金額小於零,您可以用負號替換括號。

希望這有助於:)