견적서 첨부파일 확장자 체크 드래그&드랍도 적용
This commit is contained in:
parent
eb751af432
commit
7ebe77c763
@ -23,10 +23,16 @@ export default function EstimateFileUploader({ uploadFiles, setUploadFiles }) {
|
||||
|
||||
const fileList = []
|
||||
let passFlag = true
|
||||
const allowedFileTypes = [
|
||||
'image/',
|
||||
'application/pdf',
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
||||
'application/vnd.ms-excel',
|
||||
]
|
||||
Array.from(e.target.files).forEach((file) => {
|
||||
let fileType = file.type
|
||||
//엑셀, pdf, 이미지
|
||||
if (!fileType.includes('image') && !fileType.includes('pdf') && !fileType.includes('spreadsheet')) {
|
||||
const fileType = file.type
|
||||
if (!allowedFileTypes.some((type) => fileType.includes(type))) {
|
||||
passFlag = false
|
||||
} else {
|
||||
fileList.push({ data: file, id: uuidv4() })
|
||||
@ -34,7 +40,7 @@ export default function EstimateFileUploader({ uploadFiles, setUploadFiles }) {
|
||||
})
|
||||
|
||||
if (!passFlag) {
|
||||
swalFire({ text: getMessage('estimate.detail.fileList.extCheck'), type: 'alert' })
|
||||
swalFire({ text: getMessage('estimate.detail.fileList.extCheck'), type: 'alert', icon: 'error' })
|
||||
}
|
||||
|
||||
setUploadFiles([...uploadFiles, ...fileList])
|
||||
@ -50,10 +56,17 @@ export default function EstimateFileUploader({ uploadFiles, setUploadFiles }) {
|
||||
e.stopPropagation()
|
||||
const fileList = []
|
||||
let passFlag = true
|
||||
const allowedFileTypes = [
|
||||
'image/',
|
||||
'application/pdf',
|
||||
'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet',
|
||||
'application/vnd.ms-excel',
|
||||
]
|
||||
|
||||
Array.from(e.dataTransfer.files).forEach((file) => {
|
||||
//엑셀, pdf, 이미지
|
||||
let fileType = file.type
|
||||
if (!fileType.includes('image')) {
|
||||
if (!allowedFileTypes.some((type) => fileType.includes(type))) {
|
||||
passFlag = false
|
||||
} else {
|
||||
fileList.push({ data: file, id: uuidv4() })
|
||||
@ -61,7 +74,7 @@ export default function EstimateFileUploader({ uploadFiles, setUploadFiles }) {
|
||||
})
|
||||
|
||||
if (!passFlag) {
|
||||
swalFire({ text: getMessage('estimate.detail.fileList.extCheck'), type: 'alert' })
|
||||
swalFire({ text: getMessage('estimate.detail.fileList.extCheck'), type: 'alert', icon: 'error' })
|
||||
}
|
||||
|
||||
setUploadFiles([...uploadFiles, ...fileList])
|
||||
@ -88,16 +101,7 @@ export default function EstimateFileUploader({ uploadFiles, setUploadFiles }) {
|
||||
<label className="file-upload" htmlFor="img" onClick={handleButtonClick}>
|
||||
{getMessage('estimate.detail.fileList.btn')}
|
||||
</label>
|
||||
<input
|
||||
type="file"
|
||||
multiple
|
||||
name="file"
|
||||
id="img"
|
||||
// accept="image/*"
|
||||
ref={fileInputRef}
|
||||
style={{ display: 'none' }}
|
||||
onChange={(e) => onChangeFiles(e)}
|
||||
/>
|
||||
<input type="file" multiple name="file" ref={fileInputRef} style={{ display: 'none' }} onChange={(e) => onChangeFiles(e)} />
|
||||
</div>
|
||||
<div
|
||||
className="drag-file-area"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user