Vue 공부하기

오늘은 Vue.JS step 11. axios 비동기 서버 통신에 대해 포스팅하려고 합니다. vue.js에서 axios는 브라우저, Node.js를 위한 Promise API를 활용하는 HTTP 비동기 통신 라이브러리입니다. Javascript에서 자주 사용되는 Jquery Ajax와 비슷하게 쉽고 간편하게 사용이 가능합니다. axios는 별도로 npm, yarn, CDN 등으로 설치 또는 설정하여야 사용할 수 있습니다. 이번 포스팅에선 별도의 설치 없이 CDN형태로 설정하여 사용합니다. 아래 예제 소스코드를 통해 알아보도록 하겠습니다. 기본 html에서 vue와 axios는 CDN형태로 진행할 수 있도록 get-axios.html, set-axios.html을 생성하고, REST의 GET과 POST를 ..
오늘은 step 10. eventBus 컴포넌트 간 데이터 전달에 대해 포스팅하려고 합니다. 컴포넌트 간의 데이터 전달은 총 2가지가 있습니다. 첫 번째 방법은 서로 컴포넌트끼리 연결되어 event-emit(부모로 전달), props(자식으로 전달)의 형태로 사용되는 데이터 전달 방법이 있고, 두 번째 방법은 서로 관계없는 컴포넌트끼리 데이터를 전달하는 eventBus의 연결 방법이 있습니다. 바로 앞에 첫번째 방법에 대해 포스팅했기 때문에, 오늘은 두번째 방법인 서로 관계없는 컴포넌트끼리 데이터를 전달하는 eventBus 방식에 대해 진행하겠습니다. eventBus는 컴포넌트간에 상위(부모), 하위(자식) 관계가 없더라도 데이터를 전달할 수 있다는 장점이 있지만,너무 많이 사용하면 관리가 안된다는 단점..
오늘은 Vue.JS step 9. 같은 컴포넌트 레벨의 데이터 전달(자식1 -> 자식2)에 대해 포스팅하려고 합니다. 컴포넌트 간의 데이터 전달은 총 2가지가 있습니다. 첫 번째 방법은 서로 컴포넌트끼리 연결되어 event-emit(부모로 전달), props(자식으로 전달)의 형태로 사용되는 데이터 전달 방법이 있고, 두 번째 방법은 서로 관계없는 컴포넌트끼리 데이터를 전달하는 eventBus의 연결 방법이 있습니다. 오늘은 첫번째 방법인 event-emit(부모로 전달), props(자식으로 전달) 방식에 대해 진행하겠습니다. 상위(부모) 컴포넌트에서 하위(자식) 컴포넌트로 데이터를 전달할때는 props를 사용하고, 하위(자식) 컴포넌트에서 상위(부모) 컴포넌트로 데이터를 전달할때는 event-emit..
오늘은 Vue.JS step 8. event-emit 데이터 전달(자식 -> 부모)에 대해 포스팅하려고 합니다. 하위(자식) 컴포넌트에서 상위(부모) 컴포넌트로 데이터를 상속하기 위해서는 하위(자식) 컴포넌트에서 이벤트를 발생시켜 전달합니다. 디렉티브(directive)의 이벤트 문법인 v-on이 사용되어야 하며 v-on:[하위(자식) 컴포넌트 이벤트 이름]="[상위(부모) 이벤트 핸들링 메소드 이름]" 형태로 선언되어야 합니다. 그리고 하위(자식) 컴포넌트 이벤트 이름은 this.$emit('이벤트 이름', 전달 파라미터) 형태로 $emit() 안에 이벤트 이름과 전달하고자 하는 파라미터를 정의해야 합니다. 파라미터 전달 없이 이벤트만 실행하는 것이 목적이라면 this.$emit('이벤트 이름') 형태..
오늘은 Vue.JS 보간법 디렉티브(Directive) v-bind, v-on 약어에 대해 포스팅하려고 합니다. vue에서는 인스턴스에 선언한 엘리먼트를 통해서 DOM요소를 제어합니다. DOM 제어는 v- 접두어가 붙어있는 보간법 디렉티브 속성들을 사용합니다. 디렉티브 속성중에서 v-bind와 v-on은 vue에서 자주 사용되기 때문에 약어를 제공하고 있습니다. 약어의 사용은 개인의 취향 또는 선택사항이지만 개발자끼리 소통 또는 서로의 코드를 공유하고 쉽게 이해하기 위해서는 필수로 알아두어야 한다고 생각합니다. 1. v-bind 약어 ... ... ... 2. v-on 약어 ... ... ... 참조 - https://kr.vuejs.org/v2/guide/syntax.html#%EC%95%BD%EC%9..
오늘은 Vue.JS step 7. props 데이터 전달(부모 -> 자식)에 대해 포스팅하려고 합니다. Vue.JS에서는 상위(부모) 컴포넌트에서 선언한 data의 값을 하위(자식) 컴포넌트에서 사용하고자 할 때 단순하게 bind를 하거나 Mustache(이중 중괄호)를 사용하여 data를 이용할 수 없습니다. 위 문제를 해결하기 위해 props라는 속성을 이용합니다. props란 상위(부모) 컴포넌트에서 하위(자식) 컴포넌트로 데이터를 전달할 때 사용되는 전달 방식입니다. v-bind를 사용하여 상위(부모) 컴포넌트의 데이터를 동적으로 바인딩할 수 있습니다. 아래 예제 소스코드를 통해 알아보도록 하겠습니다. props.html을 만들고, 기본 html에서 vue를 활용해 보겠습니다. 위 예제 소스에서 ..
오늘은 Vue.JS step 5. 메서드(methods)에 대해 포스팅 하려고 합니다. Vue.JS 인스턴스의 속성중에 methods를 통해 javascript의 function() 메서드를 생성할 수 있습니다. 또한 Vue.JS는 methods 안에 컴포넌트 인스턴스를 항상 참조할 수 있도록 this값을 자동으로 binding합니다. 아래 예제 소스코드를 통해 알아보도록 하겠습니다. methods.html을 만들고, 기본 html에서 vue를 활용해 보겠습니다. vue 인스턴스 안에 methods에 함수를 정의합니다. 저는 간단하게 plus, minus의 function()을 정의하였습니다. 인스턴스안에 바인딩된 num 값을 this로 사용하여 값을 늘리고 줄이는 형태의 메서드입니다. {{message..
오늘은 Vue.JS step 4. 데이터 바인딩(data binding)에 대해 포스팅하려고 합니다. 데이터 바인딩(data binding)은 HTML 태그 안에 vue 인스턴스에서 속성들을 정의한 data를 연결하여 화면에 표시하는 방법으로 {{ }} 콧수염 괄호 형태의 템플릿 엔진 Mustache 또는 v-bind 속성을 사용합니다. 아래 예제 소스코드를 통해 확인해 보도록 하겠습니다. data-binding.html을 만들고, 기본 html에서 vue를 활용해 보겠습니다. vue 인스턴스를 생성하고 엘리먼트(el)에 html의 div id가 app인 태그를 연결합니다. data에 key - value 형태의 데이터를 만들고 v-bind 또는 {{ }} Mustache형태로 app 태그 안에 정의한 ..
보노보노92
'Vue 공부하기' 태그의 글 목록