2016-08-24 4 views
0

Я использую стек MEAN в своем приложении с AngularJS как мой интерфейс. Как total sum вместе с decimal value, на самом деле я получил total sum value но decimal value не calculated ... My PlunkerДля примера: - значение ФОБ totalsum я получил 700, Ожидая как 700.57, то значение скорости Convertion общая сумма у меня 124, Ожидая как 124,10, если какой-либо один знает помощь нам решение спасибо ....Как суммировать сумму вместе с десятичным значением в angularjs?

Мой контроллер: -

.filter('sumOfValue', function() { 
    return function (data, key) { 
     debugger; 
     if (angular.isUndefined(data) && angular.isUndefined(key)) 
      return 0;   
     var sum = 0; 

     angular.forEach(data,function(v,k){ 
      sum = sum + parseInt(v[key]); 
     });   
     return sum; 
    } 
}) 

Мой Html: -

<td>{{resultValue | sumOfValue:'invoice_value_fob'}}</td> 

    <td>{{resultValue | sumOfValue:'conversion_rate'}}</td> 

Мои данные: -

$scope.sryarndebitnote = [ 
    { 
    "_id": "57ac1b6d82e1c5940ac3c730", 
    "user": { 
    "_id": "57400c32bd07906c1308e2cf", 
    "displayName": "mani selvam" 
    }, 
    "__v": 0, 
    "created": "2016-08-11T06:30:05.118Z", 
    "shipment_id": "57ac19b982e1c5940ac3c72f", 
    "conversion_rate": "62.04", 
    "invoice_value_fob_currency": "Rs", 
    "invoice_value_fob": "300.231", 
    "invoice_quantity_unit": "KG", 
    "invoice_quantity": "37", 
    "invoice_date": "2016-08-17", 
    "supplier_name": "Msd", 
    "buyer_name": "Mani selvam .R" 
    }, 

    { 
    "_id": "57b5af69df0475401f644b2e", 
    "user": { 
    "_id": "57400c32bd07906c1308e2cf", 
    "displayName": "mani selvam" 
    }, 
    "__v": 0, 
    "created": "2016-08-18T12:51:53.671Z", 
    "shipment_id": "57b5af5bdf0475401f644b2d", 
    "conversion_rate": "62.06", 
    "exclusive": true, 
    "invoice_value_fob": "400.343", 
    "invoice_quantity": "97", 
    "supplier_name": "Msd", 
    "buyer_name": "Mani selvam .R" 
    },] 

Тогда мне нужно decimal value в two digit как 700.57, не нравится 700.574, пожалуйста, помогите нам спасибо ....

Я создал Plunker для справки : - Plunker

ответ

1

Я думаю, что это должно решить вашу проблему

Here

<input type="number" name="myDecimal" placeholder="Decimal" ng-model="myDecimal" *step="0.01"* /> 

Видел ваш plunker. Вы можете изменить свой sumOfValue фильтр следующим образом: -

app.filter('sumOfValue', function() { 
    return function (data, key) { 
     debugger; 
     if (angular.isUndefined(data) && angular.isUndefined(key)) 
      return 0;   
     var sum = 0; 

     angular.forEach(data,function(v,k){ 
      sum = sum + parseFloat(v[key]); 
     });   
     return sum.toFixed(2); 
    } 

Добавление рабочего plunker ссылке here

+0

спасибо за ценный комментарий, я использовал, чтобы получить общую сумму как функциональность $ фильтра в моем контроллере, так что вы можете пожалуйста, посмотрите на «мой плункер» для справки, затем вы можете обновить плункер, чтобы понять ... спасибо ... –

+0

приведенный выше ответ не работает в моем локальном хосте, так что вы можете предоставить другое решение. .thanks .. пожалуйста, обновите plunker, затем '.toFixed (2)' он работает, но общая сумма отображается как '700,00', так что, пожалуйста, проверьте и обновите .... –

+0

Здесь вы идете http://plnkr.co/edit/C gzOS0mqyJxd4tnP00y4? p = preview –