'记录的意外结束'使用AngularJS ui grid导入csv

'Unexpected end of record' on csv import using AngularJS ui grid

本文关键字:ui grid csv AngularJS 导入 结束 记录 意外 使用      更新时间:2023-09-26

我已经想了一段时间了。
我用的是angularjs ui grid,也用的是Django。
下面的代码在html中:

<div ui-grid="gridOptions" class="grid" ui-grid-importer
    ui-grid-row-edit ui-grid-edit ui-grid-cellNav ui-grid-resize-columns
    ui-grid-auto-resize ui-grid-move-columns
    ui-grid-pagination ui-grid-exporter >
</div>

注意ui-grid-importer。

我想显示当尝试导入但未成功时的用户和错误。例如,用户试图导入CSV以外的内容。
我得到错误:

uncaught exception: UNEXPECTED_END_OF_RECORD at char...

在controller.js…
我已经尝试在$范围内实现。gridOptions = {

importerErrorCallback: function( grid, errorKey, consoleMessage, context ) {
      console.log(errorKey);
      console.log(importer.invalidCsv);
      myUserDisplayRoutine( errorKey );
      myLoggingRoutine( consoleMessage, context );
      alert("in error callback")
 },

在它到达这段代码之前,我得到了一个意想不到的end_of_record错误。

我使用的docs链接:http://ui-grid.info/docs//api/ui.grid.importer.api: GridOptions

问题不在于角ui网格。
在Chrome上运行程序给出了更明确的错误信息:

Uncaught UNEXPECTED_END_OF_RECORD at char 2569:Experience'r        grunt-scripts-csv.js:329

grunt文件在第329行有这个部分:

CSV.error = function (err){
var msg = CSV.dump(err);
CSV.reset();
throw msg;};

复制它,在本地js文件中覆盖它,并添加一个警告消息,实现了我的预期目标。