我想确保用户是否登录,然后将任何添加到上传器区域(缩略图)。
在validate
事件回调中检查内容很容易,但我似乎无法弄清楚如何阻止项目添加到DOM中,即使我在我的false
中返回submit
验证或qq-upload-fail
事件...该项只获得this.holderElm.fineUploader({
template: 'qq-simple-thumbnails-template',
// uploaderType: 'basic',
request: {
endpoint: '/image/upload_image/' + this.settings.uploadID
},
validation: {
allowedExtensions : ['jpeg', 'jpg', 'gif', 'png'],
sizeLimit : this.settings.sizeLimit,
itemLimit : this.settings.itemsLimit
},
retry: {
enableAuto: true
}
})
.on("validate", this.onValidate.bind(this) )
.on('submit', this.onSubmit.bind(this) )
.on('error', this.onError.bind(this) )
.on('upload', this.onUpload.bind(this) )
.on('complete', this.onComplete.bind(this) )
.on('allComplete', this.onAllComplete.bind(this) );
类......但如果用户未登录,我想完全不做任何事情...也许验证事件处理程序是不是把这个逻辑放在哪里,而是在哪里?
<小时/> 我的初始化代码(jQuery):
{{1}}
答案 0 :(得分:1)
使用onSubmit
event - 在将项目添加到DOM之前调用的是 - 并返回false
或将被拒绝的qq.Promise
以禁用添加该项项目到文件列表。
var userLoggedIn = true;
// snippet ...
onSubmit: function(id, name){
return userLoggedIn;
},
或承诺:
function isUserLoggedIn(username){
var promise = new qq.Promise();
$.get("/api/user/"+username, function(err, data){
if (err) return promise.failure(err);
return promise.success(data);
});
return promise;
}
// snippet ...
onSubmit: function(id, name){
return isUserLoggedIn(username);
},