이 컨트롤을 사용하고 있습니다 : http://blueimp.github.io/jQuery-File-Upload/angularjs.html 파일을 내 서버에 업로드하면 각도로 파일을 업로드 할 수 있습니다. URL을 반환하고 클라이언트에게 성공 콜백. 사용되는 플러그인은 일반적인 jquery 파일 업로드 일 뿐이지 만 사용하고있는 각도 지시어 래퍼가 있습니다.
$scope.options = {
url: '/api/Client/',
type: 'PUT',
done: function (event, data) {
var scope = angular.element(this).scope();
scope.test = "doesn't work";
scope.$apply(function() {
scope.test = "this doesn't work either";
});
}
};
파일이 잘 업로드 및 done 함수가 호출 그러나 내가보기를 업데이트 할 수없는입니다 : 여기
내가 콜백을 정의하는 방법입니다. 처음에 범위를 변경하여 시도한 다음 $ apply() 함수가 필요하다는 것을 알았지 만 이는 작동하지 않습니다.
또한
$scope.options = {
url: '/api/Client/',
type: 'PUT',
done: function (event, data) {
$scope.test = "doesn't work";
$scope.$apply(function() {
$scope.test = "this doesn't work either";
});
}
};
을 시도하고도 작동하지 않습니다. 왜 내 견해를 업데이트하지 않는 지 잘 모르겠다. 완료된 호출은 Ajax 성공 이벤트이므로이 특정 플러그인이 $ scope에 어떤 문제를 일으킬 수 있는지는 알지 못한다. $ apply. 저는 AngularJs 1.1.5를 사용하고 있지만, 1.0.7을 시도해 보았습니다. 같은 문제가 발생했습니다. 내 댓글에서 복사
는
apply를 호출하면 적용/요약이 이미 진행 중이라는 오류가 표시됩니까? –
아니요, 오류가 없습니다. 단지 아무 것도하지 않습니다. 여러 번 호출하고 $ scope.test의 값을 보면 이전에 설정된 값이 표시됩니다. 보기가 그 값으로 업데이트되지 않습니다. –
완료된 함수가 호출되면 두 번째 버전이 실제로 저와 같이 작동합니다. –