问题描述
我正在尝试在 Prime React 中使用 fileupload
上传一个 excel 文件,然后将其转换为 JSON 类型并在前端显示结果。主要问题是在 Prime React 中,需要像 url="./upload" 这样的 URL 作为属性,但在这种情况下,它不需要与后端通信。有什么解决办法吗?
<React.Fragment>
<FileUpload
mode="basic"
accept=".xlsx"
url="./upload"
maxFileSize={1000000}
label="Import"
chooseLabel="Import"
className="p-mr-2 p-d-inline-block"
uploadHandler={readExcel}
auto
chooseLabel="browse"
/>
</React.Fragment>
const [rowCount,setRowCount] = useState(0);
const [items,setItems] = useState([]);
const readExcel = (event) => {
const file = event.target.files[0];
const promise = new Promise((resolve,reject) => {
const fileReader = new FileReader();
fileReader.readAsArrayBuffer(file);
fileReader.onload = (e) => {
const bufferArray = e.target.result;
const wb = XLSX.read(bufferArray,{ type: "buffer" });
const wsname = wb.SheetNames[0];
const ws = wb.Sheets[wsname];
const data = XLSX.utils.sheet_to_json(ws);
resolve(data);
};
fileReader.onerror = (error) => {
reject(error);
};
});
promise.then((d) => {
console.log("check: ",d);
setRowCount(d.length);
setItems(d);
});
};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)