从alasql重用变量

时间:2015-06-28 14:26:19

标签: javascript alasql

我是JS的最新版本,我无法重用alasql中的变量。 当我运行我的代码时,我有“unidifined”

var dataSource = alasql('SELECT AGENT_NAME, count(*) FROM XLSX("export.xlsx",{headers:true}) GROUP BY AGENT_NAME')
console.log(dataSource)

但是当我跑步时

var dataSource = alasql('SELECT AGENT_NAME, count(*) FROM XLSX("export.xlsx",{headers:true}) GROUP BY AGENT_NAME',[],
        function (data) { console.log(data)})

一切都很好

1 个答案:

答案 0 :(得分:1)

似乎alasql在数据库响应后有一个回调。试试这个。

var dataResult;
var dataSource = alasql('SELECT AGENT_NAME, count(*) FROM XLSX("export.xlsx",{headers:true}) GROUP BY AGENT_NAME',[],
        function (data) { dataResult = data })
在触发回调之前,

dataResult将是未定义的。在那之后,它将具有价值。

如果要在数据库回调完成后触发任何代码,请将其放入回调本身。

var printResult = function(result){ console.log(result)};
var dataSource = alasql('SELECT AGENT_NAME, count(*) FROM XLSX("export.xlsx",{headers:true}) GROUP BY AGENT_NAME',[],
        function (data) { printResult(data); })