Вот полное решение
html code,
blockquote>создает поля для загрузки текстовых файлов anf, как показано ниже
<div class="form-group"> <div> <label for="usr">User Name:</label> <input type="text" id="usr" ng-model="model.username"> </div> <div> <label for="pwd">Password:</label> <input type="password" id="pwd" ng-model="model.password"> </div><hr> <div> <div class="col-lg-6"> <input type="file" file-model="model.somefile"/> </div> </div> <div> <label for="dob">Dob:</label> <input type="date" id="dob" ng-model="model.dob"> </div> <div> <label for="email">Email:</label> <input type="email"id="email" ng-model="model.email"> </div> <button type="submit" ng-click="saveData(model)" >Submit</button>
директивный код
blockquote>создать директиву filemodel для анализа файла
.directive('fileModel', ['$parse', function ($parse) { return { restrict: 'A', link: function(scope, element, attrs) { var model = $parse(attrs.fileModel); var modelSetter = model.assign; element.bind('change', function(){ scope.$apply(function(){ modelSetter(scope, element[0].files[0]); }); }); } };}]);
Код службы
] blockquote>добавьте файл и поля для формирования данных и сделайте $ http.post, как показано ниже, чтобы сохранить «Content-Type»: undefined
.service('fileUploadService', ['$http', function ($http) { this.uploadFileToUrl = function(file, username, password, dob, email, uploadUrl){ var myFormData = new FormData(); myFormData.append('file', file); myFormData.append('username', username); myFormData.append('password', password); myFormData.append('dob', dob); myFormData.append('email', email); $http.post(uploadUrl, myFormData, { transformRequest: angular.identity, headers: {'Content-Type': undefined} }) .success(function(){ }) .error(function(){ }); } }]);
В контроллере
blockquote>Теперь в контроллере вызов службы, посылая необходимые данные, добавляемые в параметры,
$scope.saveData = function(model){ var file = model.myFile; var uploadUrl = "/api/createUsers"; fileUpload.uploadFileToUrl(file, model.username, model.password, model.dob, model.email, uploadUrl); };
Один из способов увидеть это: «nlog (n) + n» меньше, чем «2nlog (n)». Теперь вы можете сбросить 2.
Потому что O
является асимптотическим сравнением, которое отвечает на вопрос, как функция сравнивается для больших n
. Нижние степени многочлена становятся несущественными для поведения функции, если n
достаточно велико.