HTML表随机“未分类”,不知道为什么

时间:2016-05-02 14:21:13

标签: javascript html mongodb meteor

问题

我正在制作一个Meteor.js应用程序,并通过Papaparse.js导入.csv文件,我将其保存在Mongo集合中,以便以后在表格中使用。数据保存在标准的Papaparse.js结构中:

results = {
  data: [ ... ],    // parsed data
  errors: [ ... ],  // errors encountered
  meta: {   ... }     // extra parse info
}

数据阵列如下所示(来自Chrome控制台): image

我在前端视图中输出它,此数据显示为表格。但有时,数据全部未分类。如果我将数据库移动到另一台服务器或将数据库导入本地,通常会发生这种情况。请查看此图片以进行比较:image

问题是为什么, 我可以解决它。

这是我的表格模板: (请注意,projectData.data来自Iron Router,它是Papaparse数据(results.data))

<template name="table">
    <div class="table-responsive">
        <table class="table table-striped table-hover sortable-theme-bootstrap table-fixedheader" data-sortable>
            <thead>
                <tr>
                    {{#each addStatusColToArray projectData.meta.fields}}
                        <th>{{this}}</th>
                    {{/each}}
                    <th class="data-controls-header"></th>
                </tr>
            </thead>
            <tbody>

                {{#each projectData.data}}
                    <tr>
                        {{#each tableObjectToKeyPairs this}}
                            <td class="{{key}}">
                                {{value}}
                            </td>
                        {{/each}}
                        <td class="data-controls">
                            <span class="glyphicon glyphicon-menu-right" aria-hidden="true"></span>
                        </td>
                    </tr>
                {{/each}}


            </tbody>
        </table>
    </div>
</template>

这是相应的JS文件:

Template.embedTable.helpers({
    rowClassPropId: function (parentContext) {

        var colLink = parentContext.projectData.meta.colLink;
        var propId = this[colLink];

        return propId;
    },
    tableObjectToKeyPairs: function (object) {

        var filteredObject = _.omit(object, "_id"); // Omit the "_id" value

        return _.map(filteredObject, function (value, key) {

            return {
                key: key,
                value: value
            };

        });
    }
});

Template.registerHelper("addStatusColToArray", function (array) {

    if (array) {
        array.push("Status"); // Pushes the "Status" last into array
        return array; // Returns the modified array
    }

});

0 个答案:

没有答案