在我的角度控制器中,我具有ExportToExcel函数,该函数使用alasql将数据导出到Excel,并且数据来自角度数组。
问题是数组可能包含null作为数据,这是在alasql中将null替换为空字符串的一种方法
以下是功能
ac.ExportToExcel = function () {
var time = new Date().toJSON().slice(0, 10);
alasql('SELECT * INTO XLSX("ExchangeReport' + time + '.xlsx",{headers:true}) FROM ? WHERE BillingPeriod = "' + ac.ExchangeReport.BillingPeriod + '" or "' + ac.ExchangeReport.BillingPeriod + '" = "" ', [ac.ExchangeDatas]);
}
这是我的数据源
ac.ExchangeDatas = [];
从
ac.GetAllExchangeData = function () {
AccountRepository.GetAllExchangeData().$promise.then(
function (data) {
ac.ExchangeDatas = data.result;
},
function (err) {
console.log("error in GetAllExchangeData : " + err);
}
);
}
Excel中的数据:
最佳答案
var old = JSON.stringify($scope.achData).replace(/null/g, '""'); //convert to
JSON string and puts empty string in place of null values
var newArray = JSON.parse(old); //convert back to array
alasql('select * into XLSX("amar.xlsx", {headers:true}) from ?', [newArray]);
关于angularjs - 使用Alasql是否可以将空列替换为空字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40984737/