본문 바로가기

FrontEnd/java script

[java script] Vue.js 입문 start

728x90
반응형

1. Vue.js란 : 자바스크립트 프레임워크 중 하나입니다.

   ▷ Vue.js : 데이터와 뷰를 연결해주는 역할

 

◎ 프레임워크 : 복잡한 내용을 간단히 미리 규격화/모듈화 해둔 도구

   ▷ 프레임워크 사용시 : 기존 자바 스크립트에서 사용할 수 없던 문법이나 입력 방식들을 사용할 수 있게 되고,

                                        타 플러그인을 통해 UI 컴포넌트나 스타일, 추가 기능 등을 불러 사용하는 것도 가능해집니다.

 

   ▷ 자바스크립트 프레임워크 종류 : Vue/React/Angular

 

   ▷ SPA(Single Page Application)은 한 페이지에서 모든 컨텐츠를 보여주는 웹사이트입니다.

   ▷ 이때, 동적인 페이지를 쉽게 만들어주는 기술이 Vue.js입니다. jQuery보다 간단합니다.

 

   ▷ 아래의 홈페이지는 Vue.js를 통한 예제 코드를 볼 수있는 페이지입니다.

        궁금하신 분들은 들어가서 Vue.js에서 예제(문서 V → 예제)를 통해 어떻게 구현할 수 있는지 참고하세요~

 

Vue.js - The Progressive JavaScript Framework | Vue.js (vuejs-korea.org)

 

Vue.js - The Progressive JavaScript Framework | Vue.js

접근성 HTML,CSS, 자바스크립트 표준을 기반으로, 쓰기 편한 API와 최고 수준의 문서를 제공합니다.

v3-docs.vuejs-korea.org

 

◎ Vue.js는 데이터와 표시되는 요소(HTML 요소 등)을 연결해 주는 역할입니다.

   ▷ 주로 MVVM(Model View ViewMode1) 구조를 사용합니다.

 

 

   ▷ 데이터는 무엇인가? (Model) : 웹 페이지에서 바뀌는 부분이 어디인지?

   ▷ 표시되는 요소는 무엇인가? (View) : HTML의 어느 부분에서 어떤 형식으로 표시되는가?

   ▷ 어떤식으로 연결되는가? (ViewModel) : HTML의 어디가 조작될 때 데이터가 어떤 형식으로 변화되는가?

 

 

 Vue.js 작성 방법 : 데이터를 만들고, 표시하는 요소를 준비한 후 연결합니다.

 

 

 Vue.js 주요 기능

 

No 기능 서식
1 { {데이터} } 데이터를 있는 그대로 표시
2 v-bind 요소의 속성을 데이터로 지정
3 v-model 입력폼과 데이터의 연결
4 v-on 이벤트 연결
5 v-if 조건에 따라 표시
6 v-for 반복해서 표시
7 computed 데이터를 사용한 계산
8 watch 데이터의 변화 감시
9 transition 표시/비표시에 애니메이션 처리
10 component 컴포넌트 조립

 

CDN을 적용해 Vue를 따로 설치하지 않고 HTML에 한줄을 추가하면 Vue를 사용할 수 있게 만들어줍니다.

 

아래의 코드 한 줄만 추가하면 Vue를 사용할 수 있습니다.
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>

아래의 주소는 해당 코드가 사용가능한 최신버전의 Vue로 적용될 수 있도록 만듭니다.
https://cdn.jsdelivr.net/npm/vue/dist/vue.js 

 

 

예제1) 클릭한 횟수를 표시하는 버튼(카운트 업을 누르면 1증가, 카운트 다운을 누르면 1감소)

 

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<title>Vue.js sample</title>
	<link rel="stylesheet" href="style.css"
	<!-- CDN 연결 -->
	<script src="https://cdn.jsdelivr.net/npm/vue@2.6.10/dist/vue.js"></script>
    <!-- https://cdn.jsdelivr.net/npm/vue/dist/vue.js -->
    <!-- 해당 코드가 사용가능한 최신버전의 vue로 적용됩니다.-->
</head>
<body>
	<h2>클릭하면 카운터가 올라갑니다.</h2>
	<div id="app">
		<p>{{count}}회</p>    <!-- {{ mustache }}  mustache : 콧수염 -->
		<button v-on:click="countUp">카운터 업</button>
		<button v-on:click="countDown">카운터 다운</button>
	</div>

	<script>
		new Vue({
			el: "#app",
			data: {
				count:0
			},
			methods:{
				countUp: function(){
					this.count++;
				},
				countDown: function(){
					this.count--;
				}
			}
		})
	</script>
</body>
</html>
Vue.js를 사용하면 변수를 script 안에 넣지 않아도 됩니다.

'카운터 업'을 클릭하면 숫자가 올라가고 '카운터 다운'을 클릭하면 숫자가 내려갑니다.

 

 

기존에 배웠던 java script나 java와 코드 사용방법이 달라서 머릿속이 좀 복잡하네요,,

 

그래도 매일 블로그 작성하면서 스스로 정리하고 모두 제 것이 되도록 해봐야겠어요!!!!!!!!!!

 

많은 분들의 피드백은 언제나 환영합니다! 많은 댓글 부탁드려요~~

 

 

728x90
반응형