【发布时间】:2017-10-10 06:13:09
【问题描述】:
我在我的 Meteor 应用程序中使用 CFS 上传文件,几乎一切正常,除了因为当我尝试上传另一张图片时,我在表单中看到了我之前发送的图片,所以我需要在提交后清除该表单图片。我试过 .reset 但它不起作用。这是我现在的代码。感谢您的帮助。
NewImage.html
<template name="newImage">
<div align="center">
<form align="center">
<div>
<div>
<span class="btn btn-success btn-file">
<input type="file" accept=".gif,.jpg,.png" class="myFileInputimagepub" id="image"/>
</span>
</div>
<div>
<img src="{{currentUser.profile.image}}" alt="Image" width="60px" height="60px" class="img-circle avatar-upload" value=''/>
</div>
</div>
</form>
</div>
</template>
NewImage.js
import './newImage.html';
Template.NewImage.events({
'change .myFileInputimagepub':function(evt,tmpl){
FS.Utility.eachFile(event,function(file){
fileImagespub.insert(file,function(err,fileObj){
if(!err){
var userId = Meteor.userId();
var imageurl = {
'profile.image':'/cfs/files/fileimages/' + fileObj._id
};
setTimeout(function(){
Meteor.users.update(userId,{$set:imageurl});
},2000);
}
})
})
},
'submit form':function(event,template){
event.preventDefault();
template.find("form").reset();
}
});
【问题讨论】:
-
(1) 是贴在使用
<img src="{{currentUser.profile.image}}"...渲染的图像周围的图像(2) 当用户的个人资料只能有一个图像时,为什么允许删除多个图像(3)为什么setTimeout更新用户对象? (4) 渲染的图像不是输入元素所以不能“重置”
标签: javascript jquery meteor