Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- K_Digital Training
- 모던 javascript Deep Dive
- useEffect return
- KDT 프로그래머스
- 우테캠 회고록
- 백준 node.js
- 프로그래머스 데브코스 프론트엔드 TIL
- Frontend Roadmap
- useRef 지역 변수
- 모던 자바스크립트 Deep Dive TIL
- 모던 자바스크립트 TIL
- 프로그래머스 데브코스
- 개발자 특강
- 머쓱이
- Vue3 Router
- 리팩토링 회고
- 프로그래머스 데브코스 프론트엔드
- 프로그래머스 K_Digital Training 프론트엔드
- Vue3
- frontend roadmap study
- react customHook 예시
- 백준 js
- 인프런 자바스크립트 알고리즘 문제풀이
- 프로그래머스 K_Digital Training
- react 프로젝트 리팩토링
- TypeScript 문법 소개
- 투포인터알고리즘 js
- KDT 프로그래머스 데브코스 프론트엔드
- 모던 자바스크립트 Deep Dive
- 모던 자바스크립트 딥다이브
Archives
- Today
- Total
프론트엔드 개발자의 기록 공간
[Vue3] Vue(2) 본문
❗❗ 데브코스 42일차 (09.28)
Vue2일차가 시작 되었다.
공식문서 기준으로 이론을 설명하고, 실습을 진행하다보니
시간이 다소 많이 소요되었다.
문법은 다루지 않을 예정이여서 Vue만의 독특한 방식 몇 개를 소개를 하겠다.
✅ HTML 클래스 바인딩
Vue는 HTML 태그내에서 여러가지 문법을 사용할 수 있다. if, for 등등 또한 변수 및 객체를 전달하여
클래스를 동적으로 전환할 수 있다.
//예시코드
<div
class="static"
:class="{ active: isActive, 'text-danger': hasError }"
></div>
<script>
data() {
return {
isActive: true,
hasError: false
}
}
</script>
//결과값
<div class="static active"></div>
v-bind:class 또는 줄여서 :class의 문법 형태로 사용할 수 있다.
//배열 구문
<div :class="[activeClass, errorClass]"></div>
<scritp>
data() {
return {
activeClass: 'active',
errorClass: 'text-danger'
}
}
</script>
//결과값
<div class="active text-danger"></div>
✅이벤트 핸들링
Vue에서 이벤트 핸들링은 "v-on" 디렉티브로 사용한다. 줄여서 "@" 기호로 DOM 이벤트를 듣고 트리거 될 때와
JavaScript를 실행할 때 사용한다.
//사용예시
<div>
<button @click="counter += 1">Add 1</button>
<p> {{ counter }} </p>
</div>
<script>
data() {
return {
counter: 1
}
}
</script>
클릭 이벤트가 발생될 때 마다, count값이 증가되고, 반응성으로 인해 DOM화면에서 실시간으로 바뀌는 것을 확인할 수 있다.
//메소드 이벤트 핸들러
<div>
//메소드 한개 정의 시
<button @click="greet">Greet</button>
//메소드 여러개 정의 시
<button @click="greet(), test()">Greet</button>
</div>
<script>
data() {
return {
name: 'Vue.js'
}
},
methods: {
greet() {
alert('Hello')
},
test(){
console.log('test')
}
}
</script>
//키 수식어 이용예시
<!-- 엔터키 입력시 -->
<input @keyup.enter="submit" />
<!-- 알트 + 엔터 -->
<input @keyup.alt.enter="clear" />
<!-- 컨트롤 + 클릭 -->
<div @click.ctrl="doSomething">Do something</div>
👨💻 체감상 아직까지는 크게 React와 달라보이는 것이 없는 것 같다.
📖 학습한 내용
- Vue(2)
- 클래스와 스타일 바인딩
- 조건부 렌더링
- 리스트 렌더링
- 이벤트 핸들링
728x90
'프로그래머스 데브코스_FE > TIL' 카테고리의 다른 글
[Vue3] Vue(4) & Webpack (0) | 2021.10.14 |
---|---|
[Vue3] Vue(3) (0) | 2021.10.13 |
[Vue3] Vue(1) (0) | 2021.10.11 |
[html&CSS Clone] YouTube & 당근마켓 (2) | 2021.10.03 |
[CSS Preprocessor ] Sass(SCSS) (2) (2) | 2021.10.02 |
Comments