//parent controller (nested controller)
var appOptometrist = angular.module('OptometristModule', ['angularFileUpload']);
appOptometrist.controller('OptometristController', function ($scope, $http) {
});
//child controller for file upload
appOptometrist.controller('ChildController', function ($scope, $http, $upload) {
$scope.onFileSelect = function($files) {
$scope.message = "";
for (var i = 0; i < $files.length; i++) {
var file = $files[i];
console.log(file);
$scope.upload = $upload.upload({
url: 'upload.php',
method: 'POST',
file: file
}).success(function(data, status, headers, config) {
$scope.message = data;
}).error(function(data, status) {
$scope.message = data;
});
}
};
});
phpfile:
<body class="nav-md" ng-app="OptometristModule">
<div class="container body" ng-controller="OptometristController">
<div ng-controller="ChildController">
<input type="file" id="i_file" name="file" ng-file-select="onFileSelect($files)" multiple />
</div>
答案 0 :(得分:1)
使用服务,我们可以通过设置&amp;获得。在控制器的注入参数中注入此服务
angular.module('appOptometrist')
.service('common', [function() {
this.criteria = {};
this.setCriteria = function(criteria) {
this.criteria = criteria;
};
this.getCriteria = function() {
this.criteria.limit = 1;
return this.criteria;
};
}]);
其他方法是broard cast&amp;上
appOptometrist.controller('ChildController', function($scope, $http, $upload) {
$scope.$emit('criteria');
:
}
appOptometrist.controller('OptometristController', function($scope, $http) {
$scope.$on('criteria', function() {:
});
});