2015-10-01 3 views
1

У меня есть таблица, анализируемая от CSV до JSON by Papaparse, которую я хочу динамически показывать в таблице. Массив данных выглядит так, что свежий от Papaparse:Динамические петли в Метеор с вложенными #each?

data: { 
    0 { 
    _id: "", 
    Testcol: "cellvalue", 
    Testcol2: "cellvalue2" 
    }, 
    1 { 
    ... 
    } 
} 

Я теперь изо всех сил, чтобы получить это в HTML, так как я не знаю значения, так как они являются динамическими, я не могу предположить, любое имя из значения.

Я попытался следующие:

<table class="table table-striped"> 
    <thead> 
     <tr> 
      {{#each projectData.meta.fields}} 
       <th>{{this}}</th> 
      {{/each}} 
     </tr> 
    </thead> 
    <tbody> 

     {{#each row in projectData.data}} 
      <tr> 
       {{#each row}} 
        <td> 
         {{this}} 
        </td> 
       {{/each}} 
      </tr> 
     {{/each}} 

    </tbody> 
</table> 

Но я получаю эту ошибку: Uncaught Error: {{#each}} currently only accepts arrays, cursors or falsey values.

Как сделать это правильно? Надеюсь, кто-то может указать мне в правильном направлении.

ответ

0

Я действительно получил его для работы прямо сейчас, нашел что-то полезное, используя хелпер для преобразования объекта в ключ/значения.

How to print key and values in Meteor Template?

Помощник:

Template.registerHelper("objectToPairs",function(object){ 
    return _.map(object, function(value, key) { 
    return { 
     key: key, 
     value: value 
    }; 
    }); 
}); 

Модифицированный #each блок:

 {{#each row in projectData.data}} 
      <tr> 
       {{#each objectToPairs row}} 
        <td> 
         {{value}} 
        </td> 
       {{/each}} 
      </tr> 
     {{/each}} 

Если это не самый лучший способ, пожалуйста, сообщите.