【发布时间】:2015-07-24 15:59:29
【问题描述】:
我是 angularjs 的新手,我想创建一个带有文件的表单。如何在 angularjs 控制器上获取文件并将其传递给 laravel?
【问题讨论】:
标签: angularjs file-upload laravel-4
我是 angularjs 的新手,我想创建一个带有文件的表单。如何在 angularjs 控制器上获取文件并将其传递给 laravel?
【问题讨论】:
标签: angularjs file-upload laravel-4
看看ng-file-upload 是非常容易配置和使用的,有一些服务器端代码的例子(也是PHP)。
如果您使用的是 bower,请安装 runnig:
bower install ng-file-upload --save
并将ngFileUpload 添加到您的模块中:
var app = angular.module('myApp', [
// other dependencies here
'ngFileUpload'
]);
HTML:
<div class="button" ngf-select ngf-change="upload($files)">Upload on file change</div>
控制器:
$scope.upload = function (files) {
if (files && files.length) {
for (var i = 0; i < files.length; i++) {
var file = files[i];
Upload.upload({
url: 'upload/url', // change this with the url/route of your laravel action
fields: {'username': $scope.username}, // this is an example to pass additional fields to pass in the post
file: file
}).progress(function (evt) {
var progressPercentage = parseInt(100.0 * evt.loaded / evt.total);
console.log('progress: ' + progressPercentage + '% ' + evt.config.file.name);
}).success(function (data, status, headers, config) {
console.log('file ' + config.file.name + 'uploaded. Response: ' + data);
alert('file uploaded!');
});
}
}
};
【讨论】: