gpt4 book ai didi

javascript - 在 Angular.js 中的 FineUploader 回调中更新 ngModel

转载 作者:行者123 更新时间:2023-11-28 20:40:24 25 4
gpt4 key购买 nike

我是 Angular.js 的新手我正在尝试通过 FineUploader 执行文件的 AJAX 发布图书馆。我尝试修改a directive I found on githubsome other code但我似乎无法将返回值返回给模型。

我的 HTML 代码类似于

  <div ng-controller="Analysis"> 
<div ng-model="analysis" fine-uploader upload-destination="upload" upload-extensions="model"></div>
</div>

使用简单的 Controller

function Analysis($scope){
$scope.analysis = [];
}

然而,技巧是指令

angular.module('cliniccio.directives', []).
directive('fineUploader', function() {
return {
restrict: 'A',
require: '?ngModel',
link: function($scope, element, attributes, ngModel) {
var uploader = new qq.FineUploader({
element: element[0],
request: {
endpoint: attributes.uploadDestination,
},
validation: {
allowedExtensions: attributes.uploadExtensions.split(',')
},
text: {
uploadButton: '<i class="icon-upload icon-white"></i> Upload File'
},
template: '<div class="qq-uploader">' +
'<pre class="qq-upload-drop-area"><span>{dragZoneText}</span></pre>' +
'<div class="qq-upload-button btn btn-info" style="width:auto;">{uploadButtonText}</div>' +
'<span class="qq-drop-processing"><span>{dropProcessingText}</span></span>' +
'<ul class="qq-upload-list" style="margin-top: 10px; text-align: center;"></ul>' +
'</div>',
classes: {
success: 'alert alert-success',
fail: 'alert alert-error'
},
callbacks: {
onComplete: function(id, fileName, responseJSON) {
console.log(ngModel);
ngModel.$modelValue.push(responseJSON);
}
}
});
}
}});

注意 onComplete 回调,它应该推送模型值。然而调试输出

file: {{analysis | json}}

仍然为空。请注意,我已经验证服务器确实发回了预期的 json。 ngModel 的名称似乎未定义。

我尝试了各种组合,但我得出的结论是这可能不是正确的方法。

最佳答案

我会在你的回调中尝试这个:

onComplete: function(id, fileName, responseJSON) {
//duplicate the previous view value.
var copy = angular.copy(ngModel.$viewValue);

//add the new objects
copy.push(responseJSON);

//update the model and run form validation.
ngModel.$setViewValue(copy);

//queue a digest.
scope.$apply();
}

如果没有 fiddle ,我无法尝试这个,但它应该可以工作。

关于javascript - 在 Angular.js 中的 FineUploader 回调中更新 ngModel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14509874/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com