Alasql如何将数据导出到csv

时间:2016-04-21 08:52:08

标签: angularjs csv umbraco7 alasql

好的,所以keyResource从我的C#控制器中提取数据作为逗号分隔值的列表。单击该按钮时,控制台会记录此数据,但是当我将alasql查询设置为keyResource或数据时,表示数据源0未定义。

angular.module("umbraco")
.controller("ExportAllController", function($scope, $http, keyResource){
    $scope.exportAll = function ($scope) {
        keyResource.exportAll().then(function (data) {
            console.log(data);
            alasql('SELECT * INTO CSV("AllDictionaryItems.csv",{headers:true}) FROM ?', []);
        });
    };
});

这就是我目前所拥有的^

这些是我尝试过的:

angular.module("umbraco")
    .controller("ExportAllController", function($scope, $http, keyResource){
        $scope.exportAll = function ($scope) {
            keyResource.exportAll().then(function (data) {
                console.log(data);
                alasql('SELECT * INTO CSV("AllDictionaryItems.csv",{headers:true}) FROM ?', [$scope.exportAll]);
            });
        };
    });

angular.module("umbraco")
.controller("ExportAllController", function($scope, $http, keyResource){
    $scope.exportAll = function ($scope) {
        keyResource.exportAll().then(function (data) {
            console.log(data);
            alasql('SELECT * INTO CSV("AllDictionaryItems.csv",{headers:true}) FROM ?', [keyResource]);
        });
    };
});

angular.module("umbraco")
    .controller("ExportAllController", function($scope, $http, keyResource){
        $scope.exportAll = function ($scope) {
            keyResource.exportAll().then(function (data) {
                console.log(data);
                alasql('SELECT * INTO CSV("AllDictionaryItems.csv",{headers:true}) FROM ?', [data]);
            });
        };
    });

我不知道如何做到这一点,因为当控制台记录数据时,我不知道为什么当我导出为CSV时它无法正常工作?

1 个答案:

答案 0 :(得分:1)

您当前的方法无效,因为您没有传递任何数据以便导出。

我认为,原因是您的最后一次尝试无效,因为data结构错误

看看下面我创建的jsfiddle,它展示了如何从字符串数组或json对象数组创建csv。

http://jsfiddle.net/alantsai/h2wbbkm6/

看看您是否尝试将data构建到其中一个结构中,并且您应该能够导出csv文件