【发布时间】:2015-02-26 18:53:41
【问题描述】:
我一直在到处寻找有关制作组件的帮助,以帮助管理从 React 中将文件上传到我设置的端点。
我尝试了许多选项,包括集成 filedropjs。我决定反对它,因为我无法控制它在 DOM 中使用 new FileDrop('zone', options); 设置的元素
这是我目前所拥有的:
module.exports = React.createClass({
displayName: "Upload",
handleChange: function(e){
formData = this.refs.uploadForm.getDOMNode();
jQuery.ajax({
url: 'http://example.com',
type : 'POST',
xhr: function(){
var myXhr = $.ajaxSettings.xhr();
if(myXhr.upload){
myXhr.upload.addEventListener('progress',progressHandlingFunction, false);
}
return myXhr;
},
data: formData,
cache: false,
contentType: false,
processData: false,
success: function(data){
alert(data);
}
});
},
render: function(){
return (
<form ref="uploadForm" className="uploader" encType="multipart/form-data" onChange={this.handleChange}>
<input ref="file" type="file" name="file" className="upload-file"/>
</form>
);
}
});
},
render: function(){
console.log(this.props.content);
if(this.props.content != ""){
return (
<img src={this.props.content} />
);
} else {
return (
<form className="uploader" encType="multipart/form-data" onChange={this.handleChange}>
<input ref="file" type="file" name="file" className="upload-file"/>
</form>
);
}
}
});
如果有人能指出我正确的方向,我会送一些虚拟的拥抱。我一直在做这方面的工作。我觉得我很接近,但并不完全在那里。
谢谢!
【问题讨论】:
-
不确定你是否可以使用它——可能不会——但以防万一:hayageek.com/docs/jquery-upload-file.php
-
像jsbin.com/qulozo/2 这样简单的东西怎么样?
-
我整理了一篇简单的博文,概述了使用 React 和 Node.js 上传图像并上传到 S3 的简单步骤:benrlodge.com/blog/post/…
-
@Dan 你能发布你最终选择的解决方案吗?谢谢