如何在angularjs中使用ng-hide时解决总计问题?

时间:2016-08-19 06:20:42

标签: html css angularjs meanjs

我在我的应用程序中使用MEAN堆栈,将AngularJS作为我的前端。我正在尝试hide一个值并获得正确的totalsum值。My Plunker如果inclusivechecked or true exclusive为假,那么该值应该隐藏,所以我使用了ng-hide,该值也隐藏了。但是总和值也显示为隐藏的独占价值,所以我期望如果某些值被隐藏,则总计值必须仅计算其余值。例如: - 如果inclusive为真,则exclusive值为hidden,则独占总值应为388,而不是499 .......请查看吸引人并帮助我同样的感谢...

控制器: - 对于独家Totalsum功能: -

.filter('totalSumPriceQty', function () {
    return function (data, key1, key2) {        
        if (angular.isUndefined(data) && angular.isUndefined(key1)  && angular.isUndefined(key2)) 
            return 0;

        var sum = 0;
        angular.forEach(data,function(v,k){
            sum = sum + (parseInt(v[key1]) - parseInt(v[key2])/100);
        });
        return sum;
    }
})

    .filter('totalSumPriceQtytwo', function () {
       return function (data, key1, key2) {        
         if (angular.isUndefined(data) && angular.isUndefined(key1)  && angular.isUndefined(key2)) 
            return 0;
              var sum = 0;
                angular.forEach(data,function(v,k){
                  sum = sum + (parseInt(v[key1]) * parseInt(v[key2])/100);
             });
        return sum;
       }
    })

我的HTML: -

<td ><p ng-hide="mani.service_tax==false">{{(mani.invoice_quantity - mani.invoice_value_fob/100)}}</p></td>

    <td ><p ng-hide="mani.exclusive==false">{{(mani.invoice_quantity * mani.invoice_value_fob/100)}}</p></td>

Totalsum Html: -

<td>{{resultValue | totalSumPriceQty:'invoice_quantity':'invoice_value_fob'}}</td>

  <td>{{resultValue | totalSumPriceQtytwo:'invoice_quantity':'invoice_value_fob'}}</td>

我创建了Plunker作为参考: - My Plunker

再举一例: -

这里的一个包容性交易是真的另一个是假的...我们使用ng-hide来隐藏假值...总数需要计算真值才会像答案一样34 .. ......不像127请帮助我们......

1 个答案:

答案 0 :(得分:1)

对于每个过滤器,添加相同的逻辑以排除用于隐藏的数据

    public void ConfigureServices(IServiceCollection services)
    {
        // Add framework services.
        services.AddSingleton<IClaimsTransformer, ClaimsTransformer>();
        services.AddAuthorization(options =>
        {
            options.AddPolicy("RequireAdministratorRole", policy => policy.RequireClaim(ClaimTypes.Role, "Administrator"));
        });
        //...
    }

    [Authorize(Policy = "RequireAdministratorRole")]
    public IActionResult Index() { }

见forked plnkr