简体   繁体   English

使用车把助手和 javascript 的类别组

[英]Group of category using handlebar helper and javascript

I use handlebar templates for nodejs application and need to group the result value by category.我为 nodejs 应用程序使用把手模板,需要按类别对结果值进行分组。 FOllowing is my data after render.以下是我渲染后的数据。 The group should be of two levels该组应该是两个级别

  { "manu":"Maruti","Fuel":"petrol","name":"X1","price":"rupees","seats":"6"},
  { "manu":"Maruti","Fuel":"petrol","name":"F1","price":"rupees","seats":"7"},
  { "manu":"Maruti","Fuel":"Disel","name":"E1","price":"rupees","seats":"5"},
  { "manu":"Toyato","Fuel":"Disel","name":"R3","price":"rupees","seats":"6"},
  { "manu":"Toyato","Fuel":"Disel","name":"G4","price":"rupees","seats":"4"},
  { "manu":"Kia","Fuel":"petrol","name":"W5","price":"rupees","seats":"6"}

i am able to achieve first level of grouping and struggling for the 2nd level.我能够达到第一级的分组并为第二级而奋斗。 The expected result预期结果

-Manu
   -Fuel
      -Name, Price, Seats

result = v1.reduce(function (r, a) {
            r[a.c_group] = r[a.c_group] || [];
            r[a.c_group].push(a);
            return r;
        }, Object.create(null));

    console.log(result);

Let me know if this is what you want:让我知道这是否是您想要的:

 var data=[{ "manu":"Maruti","Fuel":"petrol","name":"X1","price":"rupees","seats":"6"}, { "manu":"Maruti","Fuel":"petrol","name":"F1","price":"rupees","seats":"7"}, { "manu":"Maruti","Fuel":"Disel","name":"E1","price":"rupees","seats":"5"}, { "manu":"Toyato","Fuel":"Disel","name":"R3","price":"rupees","seats":"6"}, { "manu":"Toyato","Fuel":"Disel","name":"G4","price":"rupees","seats":"4"}, { "manu":"Kia","Fuel":"petrol","name":"W5","price":"rupees","seats":"6"}]; var result = data.reduce((acc, {manu, Fuel, ...rest})=>{ acc[manu] = acc[manu] || {}; acc[manu][Fuel] = acc[manu][Fuel] || []; acc[manu][Fuel].push(rest); return acc; },{}); console.log(result);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM