상-하위 컴포넌트 간 데이터 전달
2019. 3. 5. 12:51ㆍProgramming/Vue.js
MVC 모델 프레임워크에서는 한 화면을 1개의 View로 간주했다.
따라서, 한 화면의 데이터를 해당 화면 영역 어디서든지 호출할 수 있었다.
하지만!!!!!!!!
Vue의 경우 컴포넌트로 화면을 구성함으로 같은 웹 페이지라도 데이터를 공유할 수 없다는 것이 함정......
즉, 각 컴포넌트의 유효 범위가 독립적이기 때문에 다른 컴포넌트의 값을 직접적으로 참조할 수 없다는 말이다.
그렇다면 데이터를 어떻게 주고 받는 방법이 있을까?
답은 컴포넌트 간 데이터를 주고 받는 방식에 있다.
가장 기본적인 데이터 전달 방법은 아래 그림과 같이 상위(부모)-하위(자식 ) 컴포넌트 간의 데이터 전달 방법이다.
위의 그림을 설명하자면, 아래 표를 살펴보자.
상위 -> 하위 |
props라는 특별한 속성을 전달 |
하위 -> 상위 |
이벤트 전달 |
그런데 잠깐!
여기서 상위? 하위? 가 무엇인가???
하위 컴포넌트란, 이전 글에 작성한 것처럼 컴포넌트 등록 방법으로 지역 또는 전역 컴포넌트를 등록한 경우를 말한다.
상위 컴포넌트란, 이런 하위 컴포넌트를 등록한 인스턴스를 말한다.
만약, 이벤트와 함께 데이터를 전달하고 싶다면, 이벤트의 두 번째 인자 값으로 전달하거나 이벤트 버스(Event Bus)를 활용하는 방법이 존재한다고 한다.
'Programming > Vue.js' 카테고리의 다른 글
[퀴즈] props Quiz (0) | 2019.03.07 |
---|---|
Props란? (0) | 2019.03.06 |
[퀴즈 정답] 전역&지역 컴포넌트 코드 작성 퀴즈 (0) | 2019.02.25 |
[퀴즈] 전역&지역 컴포넌트 코드 작성 퀴즈 (0) | 2019.02.20 |
[실습] 전역 & 지역 컴포넌트 등록 (0) | 2019.02.19 |