【发布时间】:2014-04-02 06:32:34
【问题描述】:
我想将第三方 api (uploadcare) 编译成指令。
api 将在异步上传后返回数据信息,然后我想对控制器中的返回数据做一些事情,但我必须知道如何将返回数据从指令传递到控制器。下面是我的代码。
在js中
link: function (scope, element, attrs) {
//var fileEl = document.getElementById('testing');
var a = function() {
var file = uploadcare.fileFrom('event', {target: fileEl});
file.done(function(fileInfo) {
//scope.$apply(attrs.directUpload)
//HERE IS MY PROBLEM.
//How can I get the fileInfo then pass and run it at attrs.directUpload
}).fail(function(error, fileInfo) {
}).progress(function(uploadInfo) {
//Show progress bar then update to node
console.log(uploadInfo);
});
};
element.bind('change', function() {a()});
}
在 html 中
<input type="file" direct-upload="doSomething()">
在控制器中
$scope.doSomething = function() {alert(fileInfo)};
【问题讨论】:
-
顺便说一句,
uploadcare.fileFrom('event', ...)已过时并在 1.0 版中被删除。你应该使用uploadcare.fileFrom('object', fileEl.files[0])。
标签: angularjs angularjs-directive angularjs-controller uploadcare