在Meteor中对表格中的一列求和

在Meteor中对表格中的一列求和,meteor,Meteor,如果我在模板中创建一个表,是否有方法使用Meteor在表的底部添加一行“反应性总计”?或者我必须像在普通JavaScript中那样编写代码来求列的和吗 例如,给定表格 State Sales NY 1234 FL 670 TX 2306 Total 4210 我可以使用一些反应性技术来计算总单元格,并在其他单元格发生变化时使其保持最新吗?我就是这样做的-我相信可能有更简单的方法,但我还是Meteor的初学者: // HTML <div id="a

如果我在模板中创建一个表,是否有方法使用Meteor在表的底部添加一行“反应性总计”?或者我必须像在普通JavaScript中那样编写代码来求列的和吗

例如,给定表格

State   Sales
NY      1234
FL       670
TX      2306
Total   4210

我可以使用一些反应性技术来计算总单元格,并在其他单元格发生变化时使其保持最新吗?

我就是这样做的-我相信可能有更简单的方法,但我还是Meteor的初学者:

// HTML

<div id="allSales">
  <h2><span>Total sales: </span>{{allSales}}</h2>
</div>

// JS

Template.templatename.helpers({    
  allSales: function() {
    var allStates = Statescollection.find();
    var mappedItems = allStates.map((function(allStates) {return allStates.sales;}));
    var allSales = _.reduce(mappedItems, function(memo, num){ return memo + num; }, 0);
    return allSales;
  },
});
//HTML
总销售额:{{allSales}
//JS
Template.templatename.helpers({
allSales:function(){
var allStates=Statescollection.find();
var mappedItems=allStates.map((函数(allStates){returnallstates.sales;}));
var allSales=..reduce(MappeItems,函数(memo,num){return memo+num;},0);
退还所有销售额;
},
});

另一种方法是使用

以Erik Johnson为例,您需要这样做:

// HTML

<div id="allSales">
  <h2><span>Total sales: </span>{{allSales}}</h2>
</div>

// JS

Template.templatename.helpers({    
  allSales: function() {
    var allSales =  allStates.aggregate( [ { $group: { _id: null, total: { $sum: "$sales" } } } ]);
    return allSales.total;

  },
});
//HTML
总销售额:{{allSales}
//JS
Template.templatename.helpers({
allSales:function(){
var allSales=allStates.aggregate([{$group:{{u id:null,total:{$sum:$sales}}}]);
返回allSales.total;
},
});

我也遇到了同样的问题,并为表的列和行找到了以下解决方案


我已经创建了这个包。有了它,
MyCollection.find().sum('field')
将返回字段中所有值的总和
'field'

这是涉及到服务器的访问,还是发生在客户端?我以为聚合在meteor中不起作用,除非在服务器端有一个特殊的库