В последнее время мне пришлось написать простой загрузчик (с возможностью повторного использования) с помощью AngularJs, сохраняя мой API в отдельном месте и, наконец, написал один, используя blueimp jQuery File Uploader и сделал лил, настраивая его. Я подумал, что было бы здорово поделиться этим и, надеюсь, улучшить себя в обучении в AngularJs. (Я добавил ответ)
Простой загрузчик с использованием AngularJs (с реализацией CORS)
Ответ 1
http://codelikeapoem.com/2013/05/angularjs-tutorial-4-file-upload-using.html (Вы можете загрузить весь код)
App.Coffee
@angTut = angular.module("angTut", ['LocalStorageModule', 'ngResource', 'uploaderComponent']);
@angTut.constant('uploadServiceUrl', 'http://192.168.0.2/api/index.php')
todos_uploader_controller.coffee
"use strict"
@angTut.controller('TodosUploadController', (
$scope, uploadService
) ->
$scope.uploadLayer = (e, data, process) ->
$scope.uploadReturn = uploadService.process(e, data, process)
$scope.uploadReturn = uploadService.initialize()
)
uploader.directive
https://gist.github.com/sk8terboi87/5652187
upload.html
<div class="control-group">
<input id="testUpload" type="file" fileupload name="files[]" uploadurl="uploadReturn.uploadurl" done="uploadLayer(e, data, 'done')" fail="uploadLayer(e, data, 'fail')" progress="uploadLayer(e, data, 'progress')">
<div class="well" ng-show="uploadReturn.status">
{{uploadReturn.message}}
<div ng-show="!uploadReturn.error">
<p class="label label-info">File: {{uploadReturn.successData.name}}</p>
<p><a href="{{uploadReturn.successData.fullUrl}}" target="_blank">View file</a></p>
</div>
</div>
</div>