useImage.js 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /**
  2. * 이미지 URL 헬퍼 composable
  3. */
  4. export const useImage = () => {
  5. const config = useRuntimeConfig()
  6. /**
  7. * 이미지 상대 경로를 절대 URL로 변환
  8. * @param {string} path - 이미지 상대 경로 (예: "/uploads/images/abc.jpg")
  9. * @returns {string} - 전체 URL (예: "http://gojinFORDKOREA.mycafe24.com/uploads/images/abc.jpg")
  10. */
  11. const getImageUrl = (path) => {
  12. if (!path) return ''
  13. // 이미 전체 URL인 경우 그대로 반환
  14. if (path.startsWith('http://') || path.startsWith('https://')) {
  15. return path
  16. }
  17. // 상대 경로인 경우 imageBase 붙이기
  18. const imageBase = config.public.imageBase
  19. return `${imageBase}${path}`
  20. }
  21. /**
  22. * 미디어 파일(이미지, 비디오) 상대 경로를 절대 URL로 변환
  23. * @param {string} path - 미디어 파일 상대 경로 (예: "/images/abc.jpg")
  24. * @returns {string} - 전체 URL (예: "http://FORDKOREA.interscope.co.kr/images/abc.jpg")
  25. */
  26. const getMediaUrl = (path) => {
  27. if (!path) return ''
  28. // 이미 전체 URL인 경우 그대로 반환
  29. if (path.startsWith('http://') || path.startsWith('https://')) {
  30. return path
  31. }
  32. // 상대 경로인 경우 mediaBase 붙이기
  33. const mediaBase = config.public.mediaBase
  34. return `${mediaBase}${path}`
  35. }
  36. return {
  37. getImageUrl,
  38. getMediaUrl
  39. }
  40. }