반응형
src 내부 image 파일 import 후 다운로드 하는 방법
지난 포스팅에 이어서 이미지를 다루는 방법을 또 마주치게 되었다.
프레임워크의 src
디렉터리 내부에서 이미지 파일을 import
로 호출한 후, 다운로드 받을 수 있지 않을까 하는 생각이었는데, 이것저것 문서를 찾아보니 되었습니다!
import * as imageURL from '~/assets/image/sample/sample.png'
function downloadFile () {
const img = document.createElement('img')
img.style = {
height: '25%',
width: '25'
}
img.src = imageURL.default
console.log('imported', imageURL)
console.log(img)
console.log(img instanceof Blob)
// 이미지 다운로드
let element = document.createElement('a')
element.download = 'imagename.jpg'
element.href = imageURL
document.body.appendChild(element)
element.click()
document.body.removeChild(element)
element = null
}
사실 이러면 아래처럼 security 이슈가 발생하기 때문에 사실 추천하지는 않는 방법입니다.
그러나 DB용량을 조금이라도 아껴보고자 ... 시도해보았습니다. (ㅠㅠ) 물론 큰 차이는 없겠지만 서버에서 이미지를 직접 변경하지 않아도 되는, 번거로움을 줄여줄 수 있는 작업이 될것 같아 시도하였습니다. 실제로 배포하고 나서 포스팅 수정될수도 있음 ㅎ_ㅎ ㅋㅋ 그냥 이런 방법이 있구나 하고 이해하면 될듯.
결과는 이렇게 파일이 잘 다운로드 됩니다.
반응형
'FRONTEND > Javascript' 카테고리의 다른 글
230930 Promise 객체로 image file 목록 모두 Base64 로 변환하기 (0) | 2023.09.30 |
---|---|
220801 Promise 를 이용한 값 대기 (0) | 2022.08.01 |
220801 Typescript Destructuring (0) | 2022.08.01 |
220801 Typescript Handbook (0) | 2022.08.01 |
220627 월 TDD 정의 및 효과 (0) | 2022.06.27 |
댓글