zoukankan      html  css  js  c++  java
  • angularjs ng-csv 异步下载

    相信之前我们 前端下载csv的时候 都是通过后台代码 生成文件,然后发送给前台 文件路径来进行下载,下面介绍一下angular1 ng-csv下载 csv数据(这种不通过后台代码来实现的前台下载)

    参考

    github

    https://github.com/asafdav/ng-csv

    1. 下载 angular-sanitize.min.js 和 ng-csv.min.js    

    2. 在app中注入

    var app = angular.module("app", ['ngSanitize',
        'ngCsv'
    ]);

    3. ctrl 使用

        $scope.filename = "datafile";
    
        $scope.getArray = function () {
    
            var deferred = $q.defer();
    
            ljkjHttp.paramData.errorMsg = false;
            ljkjHttp.paramData.param = {
                guid: $localStorage.setting.guid,
                Id: "",
                WenTitle: "",
                State: "",
                UName: "",
                BeginTime: "",
                EndTime: "",
                PageIndex: 1,
                PageSize: $scope.listDataCount
            };
            ljkjHttp.paramData.cmd = "MsQHFrSoftWenTaskList";//cmd
            ljkjHttp.paramData.function = "MsQHFrSoftWenTask";//language
            ljkjHttp.post()
                   .then(function (resData) {
                       if (resData.state == 0) {
                           var listData = angular.fromJson(resData.value);
                           var resArray = [];
                           for (var item in listData) {
                               resArray.push(
                                   {
                                       Id: listData[item].Id,
                                       订单编号: listData[item].OrderNumber,
                                       文章标题: listData[item].WenTitle,
                                       订单金额: listData[item].OrderPrice,
                                       创建时间: listData[item].CreateTime,
                                       写手: listData[item].UName,
                                       状态: $scope.stateData.get(listData[item].State)
                                   }
                               );
                           }
                           $q.when(resArray).then(function () {
                               deferred.resolve(resArray);
                           });
                       }
                   });
    
            return deferred.promise;
    
        }
    
        $scope.getHeader = function () { return ['Id', '订单编号', '文章标题', '订单金额', '创建时间', '录制人', '状态'] };

    4 html 中

     <div class="myadd-button" ng-csv="getArray()"
                             filename="{{ filename }}.csv"
                             csv-header="getHeader()"
                             lazy-load="true">
                            <span>导出数据</span>
                        </div>
  • 相关阅读:
    三菱Q系列PLC MC协议通讯
    相机常用属性配置简介[转]---Labview IMAQ 修改相机曝光等参数的方法
    数码显微镜的实际放大倍数的正确计算方法【转载】
    VS2012 C# 配置log4net
    CHM格式帮助文档无法打开的问题
    win10 下安装win7虚拟机
    杂记:使用RawCap和Wireshark对 127.0.0.1或localhost 进行抓包
    杂记:01
    linux应用编程一:文件IO和目录操作
    QTableWidget常用函数及注意事项
  • 原文地址:https://www.cnblogs.com/richard1015/p/7270022.html
Copyright © 2011-2022 走看看