如何警告angular ui网格导入文件失败

How to alert on angular ui grid import file fail?

本文关键字:网格 ui 导入 文件 失败 angular 何警告 警告      更新时间:2023-09-26

我正在使用angular UI Grid导入文件。
我正在使用:

enableGridMenu: true,
importerDataAddCallback: function (grid, newObjects) {

当我导入一个非csv文件时,我得到错误:

未捕获异常:unexpected ted_end_of_record at char…

我想有一个警告框弹出,如果导入不能正常工作。
我发现 uiGridImporterService有方法,alertError(grid, headerRow)
我不确定这是不是我需要的。

那么,如果失败,我该如何添加Alert呢?
作为附带问题,我可以检查它是否正在导入。csv文件吗?

下面是在CSV导入失败时发出警报的代码:

CSV.error = function (err){
    var msg = CSV.dump(err);
    CSV.reset();
    //alert("CSV import failed.");
    toastr["error"]("Import failed.");
    throw msg;
};

使用$q

通过使用$q,你可以返回一个承诺,它可以失败也可以通过。在失败的情况下,你可以调用一个警报来弹出。

摘自AngularJS文档

return $q(function(resolve, reject) {
  setTimeout(function() {
    if (okToGreet(name)) {
      resolve('Hello, ' + name + '!');
    } else {
      reject('Greeting ' + name + ' is not allowed.');
    }
  }, 1000);
});

在faild promises返回时,你可以弹出警告,告诉用户操作失败