UNPKG

ng-csv

Version:

Simple directive that turns arrays and objects into downloadable CSV files

74 lines (57 loc) 2.79 kB
<!doctype html> <html> <head> <link href="https://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.15/angular.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.15/angular-sanitize.min.js"></script> <script src="../build/ng-csv.js"></script> </head> <body> <div ng-app="myapp"> <div class="container" ng-controller="myctrl"> <div class="page-header"> <h1>ngCsv <small>example</small></h1> </div> <div class="form-group"> <label for="filename">Filename </label> <input type="text" id="filename" class="form-control" ng-model="filename"> </div> <div class="form-group"> <label for="separator">Field separator</label> <input type="text" id="separator" class="form-control" ng-model="separator" ng-init="separator=','"> </div> <div class="form-group"> <label for="decimal-separator">Decimal separator</label> <input type="text" id="decimal-separator" class="form-control" ng-model="decimalSeparator" ng-init="decimalSeparator='.'"> </div> <button class="btn btn-default" ng-csv="getArray" filename="{{ filename }}.csv" field-separator="{{separator}}" decimal-separator="{{decimalSeparator}}" >Export to CSV</button> <button class="btn btn-default" ng-csv="getArray" csv-header="getHeader()" filename="{{ filename }}" field-separator="{{separator}}" decimal-separator="{{decimalSeparator}}" >Export to CSV with header</button> <button class="btn btn-default" ng-csv="getArray" csv-header="getHeader()" filename="{{ filename }}" field-separator="{{separator}}" decimal-separator="{{decimalSeparator}}" ng-click="clickFn()">Export with ng-click</button> <button class="btn btn-default" ng-csv="getArray" filename="{{ filename }}.csv" field-separator="{{separator}}" decimal-separator="{{decimalSeparator}}" add-bom="true" >With BOM</button> <button class="btn btn-default" ng-click="addRandomRow()">Add row</button> </div> </div> <script> var myapp = angular.module('myapp', ["ngSanitize", "ngCsv"]); myapp.controller('myctrl', function ($scope) { $scope.filename = "test"; $scope.getArray = [{a: 1, b:2}, {a:3, b:4}]; $scope.addRandomRow = function() { $scope.getArray.push({a: Math.floor((Math.random()*10)+1), b: Math.floor((Math.random()*10)+1)}); }; $scope.getHeader = function () {return ["A", "B"]}; $scope.clickFn = function() { console.log("click click click"); }; }); </script> </body> </html>