4

私はJSで最新であり、alasqlから変数を再利用できません。コードを実行すると、「未定義」になります

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)})

すべて順調

4

1 に答える 1

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); })
于 2015-06-28T14:32:06.663 に答える