2015-11-03 90 views
4

Excel文件,我想導出數據的數據在$ scope.myArray被保存到excel文件的角度JS保存使用FileSaver.js

1)用戶點擊一個按鈕 2)脫穎而出。

我試圖

var blob = new Blob($scope.myArray , { 
    type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8" 
}); 
saveAs(blob, "Report.xls"); 
}; 

它提示打開Excel文件。 但是,每當我嘗試打開它,它說文件格式或文件擴展名無效。

任何幫助!

回答

7

試試這個

var myJsonString = JSON.stringify($scope.myArray); 
     var blob = new Blob([myJsonString], { 
      type: "application/vnd.ms-excel;charset=charset=utf-8" 
     }); 
     saveAs(blob, "Report.xls"); 
+0

$ scope.myArray必須是字符串類型,等待 – Shohel

+0

它的工作,多了一個疑問句。它向我展示了很多[object Object],myArray包含以下數據..... [Object {IdeaNumber = 31,Description =「amit1」,Department =「RBVH/ETI1」,more ...},Object {IdeaNumber = 32,Description =「Testing nutshell」,Department =「RBEI/BSW2」,more ...},Object {IdeaNumber = 35,Description =「Testing nutshell」,Department =「RBEI/BSW2」,more ...} ] –

+0

現在你可以試試。 – Shohel

0
csv = ['name','md5','desc'] 
    _.map $scope.trustFileList, (_file) -> 
    csv.push "\n#{_file.name}" 
    csv.push _file.md5 
    csv.push _file.desc 

    blob = new Blob([csv], { 
    type: "application/json;charset=utf-8" 
    }); 

    saveAs(blob, "TrustFileWhiteList.xls");