I have a variable with huge data some thing like this.
$scope.employees = [
{"firstName":"John", "lastName":"Doe",
"city": "Bangalore","State":karnataka,},
{"firstName":"Anna", "lastName":"Smith",
"city": "Hyderabad","State":AndraPradesh,},
{"firstName":"Peter", "lastName": "Jones",
"city": "Mumbai","State":Maharastra,},
];
I want to save it to JSON file, when I click a button or something.
$scope.employees is the object to be saved to a file
$scope.savedJSON = angular.toJson($scope.employees,true);
var blob = new Blob([$scope.savedJSON],{
type: "application/json;charset=utf-8;"
});
var downloadLink = document.createElement('a');
downloadLink.setAttribute('download', 'sampleJSON.txt');
downloadLink.setAttribute('href', window.URL.createObjectURL(blob));
downloadLink.click();
angular.toJson should help you out.
var app = angular.module('myApp', []);
app.controller('MainCtrl', ['$scope', '$filter', function ($scope, $filter) {
$scope.employees = [
{"firstName":"John", "lastName":"Doe",
"city": "Bangalore","State":karnataka,},
{"firstName":"Anna", "lastName":"Smith",
"city": "Hyderabad","State":AndraPradesh,},
{"firstName":"Peter", "lastName": "Jones",
"city": "Mumbai","State":Maharastra,},
];
$scope.savedJSON = '';
$scope.save = function () {
$scope.savedJSON = angular.toJson($filter('filter')($scope.employees, $scope.searchText));
};
}]);
var blob = new Blob([scope.save],{
type: "application/json;charset=utf-8;"
});
downloadLink.attr('href', window.URL.createObjectURL(blob));
来源:https://stackoverflow.com/questions/28536265/how-to-write-data-to-file-in-angularjs