我正在使用带有角度的jquery文件上传,它工作得很好。我在 fileuploadchange 上添加了我自己的回调,所以当用户选择不同的文件时,你会得到一个回调。上传表单在覆盖中,当用户完成时我关闭。当用户想要上传另一张图片(这是我使用它的地方)时,fileuploadchange 报告错误
TypeError: data.scope is not a function
var scope = data.scope();
它所指的行
add: function (e, data) {
if (e.isDefaultPrevented()) {
return false;
}
var scope = data.scope(); <----------------------------------
data.process(function () {
return scope.process(data);
}).always(
我不知道为什么它会给出这个错误。当我 console.log 数据变量时,它第二次丢失 .scope() 但我不知道为什么。
有人有建议吗?提前致谢!
- 附加信息 - -
控制器在 ng-view 中设置
<form id="fileupload" action="/api/profile/picture" method="POST" enctype="multipart/form-data" data-ng-controller="DemoFileUploadController" data-file-upload="options" data-ng-class="{'fileupload-processing': processing() || loadingFiles}" class="avatar">
在控制器中我有以下选项
$scope.options = {
url: '/api/userprofile/' + $rootScope.User.UserId + '/avatar/',
type: 'POST'
};
这些指令是 github 中的一次的精确副本,由 blueimp 提供,https://github.com/blueimp/jQuery-File-Upload/blob/master/js/jquery.fileupload-angular.js