728x90
뷰 인스턴스
인스턴스는 뷰로 개발할 때 필수로 생성해야 하는 코드이다
인스턴스 생성
인스턴스는 아래와 같이 생성할 수 있다.
new Vue();
인스턴스를 생성하고 나면 아래와 같이 인스턴스 안에 어떤 속성과 API가 있는지 콘솔 창에서 확인할 수 있다.
var vm = new Vue(); console.log(vm);
크롬 개발자 도구를 열고 Console 패널을 확인하면 아래와 같은 결과가 나온다.
위와 같이 인스턴스를 생성하기 위해선 new Vue 라는 생성자를 호출해야 한다. 생성자란 객체를 새로 생성할 때 자주 사용하는 옵션과 기능들을 미리 특정 객체에 저장해 놓고, 새로운 객체를 생성할 때 기존에 포함된 기능과 더불어 기존 기능을 쉽게 확장하여 사용하는 방법이다.
이처럼 인스턴스 안에는 미리 정의되어 있는 속성과 메서드(API)들이 있기 때문에 이 기능들을 이용하여 빠르게 화면을 개발해나갈 수 있습니다.
인스턴스의 속성, API들
인스턴스에서 사용할 수 있는 속성과 API는 다음과 같습니다.
new Vue({ el: , template: , data: , methods: , created: , watch: , });
- el : 인스턴스가 그려지는 화면의 시작점 (특정 HTML 태그)
- template : 화면에 표시할 요소 (HTML, CSS 등)
- data : 뷰의 반응성(Reactivity)이 반영된 데이터 속성
- methods : 화면의 동작과 이벤트 로직을 제어하는 메서드
- created : 뷰의 라이프 사이클과 관련된 속성
- watch : data에서 정의한 속성이 변화했을 때 추가 동작을 수행할 수 있게 정의하는 속성
# 인스턴스의 유효 범위
Vue 인스턴스는 생성 후 HTML의 범위 내에서만 옵션 속성들이 적용된다. 이를 인스턴스의 유효 범위라 한다. 컴포넌트 설명 부분에서 지역 컴포넌트와 전역 컴포넌트의 차이점을 이해하기 위해서도 꼭 알아야 하는 개념이다, 인스턴스의 유효 범위는 el 속성에 의해 정해진다.
인스턴스가 생성된 후 화면에 적용되는 순서는 아래와 같다.
- Vue 라이브러리 로딩
- 인스턴스 객체 생성
- 특정 화면 element에 인스턴스를 연결
- 인스턴스의 내용이 element에 적용
- 적용된 화면이 사용자에게 노출
만약 'Hello Vue.js!' 예제를 아래처럼 수정한다면
<div id="app">
</div>
{{ message }}
{{ message }}
인스턴스 유효 범위를 벗어났기 때문에 message는 출력되지 않는다.
뷰 생성자 함수
728x90
'JavaScript' 카테고리의 다른 글
[Node.js] sequelize.import is not a function error 에러 해결 (0) | 2021.09.08 |
---|---|
[Node.js] Browserslist: caniuse-lite is outdated. Please run 오류 (0) | 2021.09.08 |
JS 스타일 가이드 (0) | 2021.08.04 |
Node.js json data (0) | 2021.07.02 |
//Javascript// 10진수 -> 2진수, 8진수, 16진수 (0) | 2021.03.06 |