【问题标题】:Angular JS + AlaSQL importAngular JS + AlaSQL 导入
【发布时间】:2018-01-24 10:29:07
【问题描述】:

我正在做一个项目,我必须导入 Excel 数据并为其创建 Web 视图,我现在的解决方案是在 C# 上解析它并将 JSON 结果作为 API 发送,我刚刚发现了 AlaSQL,导入数据纯 JS 工作正常,但我不知道如何从控制器加载它来替换我当前的 $http.get(..)

简而言之,我需要使用 alasql 将 Http.get 替换为对位于 SharePoint 上的 xls 文件的调用,并直接从数组中访问数据。

编辑:我将尝试的另一种方法是从 excel 文件返回的 java 对象中创建一个工厂 当前代码:

$http.get("xxx/file.json")
    .then(function(response) {
        $scope.xdata = response.data;
        $scope.zdata = response.data;
        $scope.collection = response.data;

        $scope.labels = [];
        $scope.data = [];

        $scope.datalength = $scope.zdata.length;

        $scope.loading = True;
    });
}

【问题讨论】:

  • 你想加载控制器事件吗?
  • 没错,它与我使用 http.get onload 导入的数据相同

标签: javascript angularjs excel alasql


【解决方案1】:

在这里,我提到了基本的控制器示例。请使用它。

app.controller('DataViewCtrl', function($scope, $http){
    //scope variable declaration 

    //local function
    function loadDefaultValues(){
        $scope.loading = true;
        $http.get("xxx/file.json")
        .then(function(response) {
            $scope.xdata = response.data;
            $scope.zdata = response.data;
            $scope.collection = response.data;

            $scope.labels = [];
            $scope.data = [];

            $scope.datalength = $scope.zdata.length;

            $scope.loading = false;
        });
    }

    //scope function

    //call onload functions
    loadDefaultValues();
   }
});

【讨论】:

  • 我不明白这将如何解决有问题的问题,即使用 AlaSQL 从 Excel 而不是 JSON 加载数据
【解决方案2】:

我设法让它运行:

alasql(['SELECT * FROM FILE("file.xls",{headers:true})']).then(function(data){ 

        console.log(data[0]);
            $scope.xdata = JSON.stringify(data[0]);
            $scope.zdata = JSON.stringify(data[0]);
            $scope.collection = JSON.stringify(data[0]);

            $scope.labels = [];
            $scope.data = [];

            $scope.datalength = $scope.zdata.length;

            $scope.loading = true;
        });
}

但是使用 NG-repeat 渲染它的速度慢得令人难以置信

【讨论】:

    猜你喜欢
    • 2022-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-07
    • 2018-01-01
    • 1970-01-01
    • 2017-02-08
    • 2021-09-22
    相关资源
    最近更新 更多