网页请求的数据导出

网页请求的数据导出

EASY

Code:

in .html

<button (click)="exportCSV()">导出CSV</button>

in .ts

exportCSV() {
    let dataObj = {
      colname: {
        name: "姓名",
        city: "城市",
        age: "年龄"
      },
      data: [
        {
          name: "Wing",
          city: "Paglieta",
          age: "25"
        }, {
          name: "Whitney",
          city: "Bear",
          age: "32"
        }, {
          name: "Oliver",
          city: "Bruderheim",
          age: "31"
        }
      ]
    };
    let dataStr = JSON.stringify(dataObj);
    this.electronService.send('export-csv', dataStr);
  }

in main

ipcMain.on("export-csv", (event, arg) => {
    let options = {
      title: "导出CSV",
      message: "导出信息",
      detail: "导出详情",
      buttons: ["保存", "取消"],
      filters: [
        {name: 'CSV', extensions: ['csv']}
      ],
      defaultId: 0,
      cancelId: 1
    };
    dialog.showSaveDialog(options, response => {
      console.log(response);
      let dataObj = JSON.parse(arg);
      let dataStr = "";
      for (let cell in dataObj.colname) {
        dataStr = dataStr + '"' + dataObj.colname[cell] + '",'
      }
      dataStr = dataStr.substring(0, dataStr.length - 1) + "\r\n";
     for (let m in dataObj.data) {
         for (let n in dataObj.data[m]) {
           dataStr = dataStr + '"' + dataObj.data[m][n] + '",'
         }
         dataStr = dataStr.substring(0, dataStr.length - 1) + "\r\n";
     }
    fs.writeFile(response, dataStr, 'utf8', function (err) {
        if (err) throw err;
        console.log("Export Success!");
      });
    });
});
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,923评论 18 139
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,264评论 25 708
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,522评论 2 45
  • Hi,大家好,欢迎来到英语师姐FREE 在这里,让我们像海绵一样学习,像战士一样实践吧 两个提问 今天开始之前,我...
    英语师姐FREE阅读 1,829评论 3 15
  • 玩玩而已 不必当真 嗯
    Zhenxin_阅读 190评论 0 0