Front-end/Vue.js
[Vue.js] 싱글 파일 컴포넌트
ImYena
2021. 11. 9. 17:13
728x90
[Vue.js] 컴포넌트란?, 뷰와 컴포넌트
컴포넌트(Component) 재사용 혹은 조립 가능한 독립적인 UI 객체 HTML 조각( ) + JavaScrip( 뷰(View)와 컴포넌트(Component) 공통점 .vue(싱글 파일 컴포넌트) 파일 확장명 사용 둘다 컴포넌트이므로 파일 작성.
imyena.tistory.com
이어서)
싱글 파일 컴포넌트(Single File Component)
- HTML, CSS, JS 코드를 한 파일에서 관리하는 방법으로 vue 확장자를 가진 파일
- .vue 파일은 컴파일 되면 자바 코드로 변환되기 때문에 하나의 모듈임
- 공통 요소 컴포넌트: src/components/....vue
- 화면 컴포넌트: src/views/....vue
싱글 파일 컴포넌트 구조
<template>
- 컴포넌트가 렌더링될 때 화면에 보여줄 HTML 태그 부분
- 데이터 바인딩을 위한 표현식으로 {{...}} 사용
- 디렉티브(v-*)를 이용해서 데이터 바인딩, 이벤트 처리 및 동적 화면 제어
<script>
- name: 컴포넌트 이름 선언
- data: 컴포넌트 데이터 선언
- methods: 컴포넌트 이벤트 처리를 위한 메소드 선언
- beforeCreate, created, beforeMount, mounted, beforeUpdate, updated, beforeDestroy, destroyed: 컴포넌트 라이프사이클 훅(Lifecycle Hook) 선언
- 데이터 바인딩을 위한 선언
- watch: 데이터 및 상태 감시를 위한 선언
<style>
- <style> 태그: 전역 style
- <style scoped> 지역 style
- App.vue를 제외하고 나머지 .vue는 모두 지역 style 적용, 아니면 싱글 파일 컴포넌트 위반
더보기
* 컴포넌트 <template> 태그 내의 태그들의 속성 중 id 속성 사용 하지 말 것,
컴포넌트는 재사용되기 때문에 중복되는 id가 생기게 되는 것
728x90
반응형