Vue
vue.js의 path에 들어가있는 '@'는 무슨 뜻일까?
앙꼬오빠
2021. 2. 10. 14:30
<script>
import "@/assets/images/icons_ustra/icon_asterisk.svg";
import "@/assets/images/icons_ustra/icon_operations_search.svg";
import "@/assets/images/icons_ustra/icon_status_checkmark_filled.svg";
import "@/assets/images/icons_ustra/icon_status_checkmark_outline.svg";
import "@/assets/images/icons_ustra/icon_formatting_attachment.svg";
</script>
vue.js에서 path에 '@'가 들어가 있는 걸 본 적이 있다.
'@'는 무슨 뜻일까?
const path = require('path');
module.exports = {
// 웹팩 설정
configureWebpack: {
// resolve.alias는 모듈을 더 쉽게 import, require 하게 만듭니다.
resolve: {
alias: {
// '@'는 현재 프로젝트의 client/src/까지의 최종 경로를 의미합니다.
'@': path.join(__dirname, 'src/')
}
}
}
}
Node.js에서 __dirname 은 현재 실행하는 파일의 절대경로를 말합니다.
Vue.js에서 경로를 사용할 때(img, import, require 등) webpack bundle 때 '@'라는 경로를 src/ 경로로 바꿔주는 설정입니다.
webpack에서 이렇게 '@'는 src/ 경로라고 기본적으로 설정을 해주면 수시로 경로를 입력해야하는 불편한 요소가 해결됩니다.
<script>
import "../../../assets/images/icons_ustra/icon_asterisk.svg";
import "../../../assets/images/icons_ustra/icon_operations_search.svg";
import "../../../assets/images/icons_ustra/icon_status_checkmark_filled.svg";
import "../../../assets/images/icons_ustra/icon_status_checkmark_outline.svg";
import "../../../assets/images/icons_ustra/icon_formatting_attachment.svg";
</script>
경로 값을 '@'에 담아두지 않았다면 이런식으로 사용하고 있었을지도 모르겠다.