这里有很多类似的例子,但好像没有找到针对React的。我已经成功将纯JS转换为React,但是遇到了一个错误。
答案看起来很简单,所以我在React中这样做:
getInitialState: function(){
return{file: []}
},
_onChange: function(){
// Assuming only image
var file = this.refs.file.files[0];
var reader = new FileReader();
var url = reader.readAsDataURL(file);
console.log(url) // Would see a path?
// TODO: concat files for setState
},
render: function(){
return(
<div>
<form>
<input
ref="file"
type="file"
name="user[image]"
multiple="true"
onChange={this._onChange}/>
</form>
{/* Only show first image, for now. */}
<img src={this.state.file[0} />
</div>
)
};
基本上我看到的所有答案都展示了类似于我所拥有的东西。在React应用程序中有何差异?
关于答案:
props.onPreviewChange(objectUrl)
而不是setPreview(objectUrl)
调用?当然,就像React一样,它将转到父组件,并且您必须以另一种方式在对等组件之间管理状态。 - Jay Wick