티스토리 뷰
데이터 바인딩?
화면상에 보여지는 데이터(View)와 브라우저 메모리에 있는 데이터(Model)를 묶어서(Binding) 서로 간의 데이터를 동기화하는 것을 의미
HTML에서 서버 혹은 스크립트상에서 받아온 데이터를 화면상에 그려주고 있다고 가정을 했을 때, 해당 값이 변경이 될 경우 다시 HTML 상에 데이터(값)를 변경된 값에 따라서 맞추어 주는 동작을 '데이터 바인딩'이라고 함
단방향 바인딩?

컴포넌트 내에서 '단방향 데이터 바인딩'은 Javascript(Model)에서 HTML(View)로 한 방향으로만 데이터를 동기화하는 것을 의미
단방향 데이터 바인딩이기에 역으로 HTML(View)에서 JS(Model)로의 직접적인 데이터 갱신은 불가능
컴포넌트 간에서 단방향 데이터 바인딩은 부모 컴포넌트에서 자식 컴포넌트로만 데이터가 전달되는 구조
장점
- 코드의 양 감소
단점
- 변화에 따라 DOM 객체 전체를 렌더링 하거나 데이터를 바꿔 성능이 감소 가능
양방향 바인딩?

컴포넌트 내에서 '양방향 데이터 바인딩'은 Javascript(Model)와 HTML(View) 사이에 ViewModel이 존재하여 하나로 묶여서(Binding) 되어서 둘 중 하나만 변경되어도 함께 변경되는 것을 의미
컴포넌트 간에서는 부모 컴포넌트에서 자식 컴포넌트로는 Props를 통해 데이터를 전달하고, 자식 컴포넌트에서 부모 컴포넌트로는 Emit Event를 통해서 데이터를 전달하는 구조
장점
- 성능 저하 없이 DOM을 렌더링
단점
- 변화된 값을 매번 감지하고 바인딩하기 때문에 코드 증가
'Study' 카테고리의 다른 글
| 기술면접-컴퓨터공학(웹)-1 (0) | 2024.03.12 |
|---|---|
| 기술면접-컴퓨터공학(네트워크)-1 (0) | 2024.03.05 |
| 기술면접-컴퓨터공학(운영체제)-2 (1) | 2024.03.04 |
| 기술면접-컴퓨터공학(운영체제)-1 (0) | 2024.03.04 |
| MPA vs SPA 그리고 SSR vs CSR (0) | 2022.06.25 |