【发布时间】:2019-09-20 03:49:40
【问题描述】:
我正在使用 react-dropzone 和 cloudinary 进行图片上传。
我已经在我的帐户和我的 react 项目之间建立了成功的连接,我可以通过我的 react 项目上传图片。
我在 react 项目中设置文件名时遇到问题。
这是我的 react 项目的代码片段。
我已经尝试过这样的事情:
onImageDrop(files) {
console.log(files)
var test = JSON.parse(JSON.stringify(files))
test[0]["name"] = "test"
this.handleImageUpload(test);
}
但我收到一条错误消息,提示该文件是只读的。
这是我所拥有的工作示例
onImageDrop(files) {
this.handleImageUpload(files[0]);
}
handleImageUpload(file) {
let upload = request.post(CLOUDINARY_UPLOAD_URL)
.field('upload_preset', CLOUDINARY_UPLOAD_PRESET)
.field('file', file);
upload.end((err, response) => {
if (err) {
console.error(err);
}
console.log(response)
});
}
render() {
return (
<div>
<Dropzone
onDrop={this.onImageDrop.bind(this)}cloudinary
accept="image/*"
multiple={false}>
{({ getRootProps, getInputProps }) => {
console.log("input props", getInputProps)
return (
<div
{...getRootProps()}
>
<input {...getInputProps()} />
{
<p>Try dropping some files here, or click to select files to upload.</p>
}
</div>
)
}}
</Dropzone>
</div>
)
}
如何在将文件发送到 cloudfire 之前更改文件名?
【问题讨论】:
标签: reactjs cloudinary react-dropzone