#reactjs
#reactjs
Вопрос:
У меня есть этот загрузчик из ant design:
import React from "react";
import ReactDOM from "react-dom";
import "antd/dist/antd.css";
import "./index.css";
import {Upload, Icon, Modal} from "antd";
function getBase64(file) {
return new Promise((resolve, reject) => {
const reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = () => resolve(reader.result);
reader.onerror = (error) => reject(error);
});
}
class PicturesWall extends React.Component {
state = {
previewVisible: false,
previewImage: "",
fileList: [
{
uid: "-1",
name: "image.png",
status: "done",
url:
"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
},
{
uid: "-2",
name: "image.png",
status: "done",
url:
"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
},
{
uid: "-3",
name: "image.png",
status: "done",
url:
"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
},
{
uid: "-4",
name: "image.png",
status: "done",
url:
"https://zos.alipayobjects.com/rmsportal/jkjgkEfvpUPVyRjUImniVslZfWPnJuuZ.png"
},
{
uid: "-5",
name: "image.png",
status: "error"
}
]
};
handleCancel = () => this.setState({previewVisible: false});
handlePreview = async (file) => {
console.log(file, "prev");
if (!file.url amp;amp; !file.preview) {
file.preview = await getBase64(file.originFileObj);
}
this.setState({
previewImage: file.url || file.preview,
previewVisible: true
});
};
handleChange = ({fileList}) => this.setState({fileList});
render() {
const {previewVisible, previewImage, fileList} = this.state;
const uploadButton = (
<div>
<Icon type="plus"/>
<div className="ant-upload-text">Upload</div>
</div>
);
return (
<div className="clearfix">
<Upload
accept="application/pdf"
action="https://www.mocky.io/v2/5cc8019d300000980a055e76"
listType="picture-card"
fileList={fileList}
onPreview={this.handlePreview}
onChange={this.handleChange}
>
{fileList.length >= 8 ? null : uploadButton}
</Upload>
<Modal
visible={previewVisible}
footer={null}
onCancel={this.handleCancel}
>
<img alt="example" style={{width: "100%"}} src={previewImage}/>
</Modal>
</div>
);
}
}
ReactDOM.render(<PicturesWall/>, document.getElementById("container"));
Проблема в том, что я не могу просмотреть файлы pdf.
Почему я не могу просмотреть файл, если загружаю формат pdf? Режим предварительного просмотра открыт только для изображений, но для файлов значок отключен. Кто может помочь?
https://codesandbox.io/s/intelligent-mayer-e26cp?file=/index.js:0-2718
Комментарии:
1. @mehamasum, не могли бы вы помочь, пожалуйста.