개발자
[Vue] Vue 란?(어플리케이션 생성/공식문서 간단 리뷰) 본문
공식 문서에 나와있는 사용법 data를 함수로 사용 ( vue 정리 한것과 비교해보기)
처음 값은 카운트:0 에서 시작, 클릭하면 카운트값이 1씩 증가
어플리케이션 생성
모든 Vue 애플리케이션은 다음 함수를 사용하여 새 애플리케이션 인스턴스를 생성 하여 시작합니다
1
2
3
4
5
6
|
import {createApp} from 'vue'
const app = creatApp({
/* root component options */
})
|
cs |
-기존에 new Vue() 생성자 함수를 사용하는 대신 vreateApp() 함수를 사용한다
createApp(app).mount(#app);
여러 속성을 동적으로 바인딩
1
2
3
4
5
6
7
8
9
|
date () {
return {
objectOfAttrs : {
id : 'container',
class : 'wrapper'
}
}
}
|
cs |
v-bind 인수 없이 사용하여 단일 요소에 바인딩 할 수 있다.
1
|
<button :disabled="isButtonDisabled">Button</button>
|
cs |
v-bind 디렉티브는 태그의 속성을 제어할 수 있다. 위 예제에서 button 태그 disableed 속성 값(true or flase)을 isbuttondisable 변수에 바인딩 했다. 데이터 리턴시에 isButtonDisable : true 이렇게 써주는 듯
클래스 바인딩
v-bind:class -> :class ="{'클래스명':'조건'}"
1
|
<div :class="{ active: isActive }"></div>
|
cs |
computed(연산 프로퍼티) 속성을 이용한 바인딩 : 탬플릿에서 사용할만한 복잡한 로직을 computed에서 사용
배열에 바인딩
다음을 렌더링
1
|
<div class="active text-danger"></div>
|
cs |
삼항 연산자 이용한 탬플릿
1
|
<div :class="[isActive ? activeClass : '', errorClass]"></div>
|
cs |
인라인 스타일 바인딩
- 객체에 바인딩
1
|
<div :style="{ color: activeColor, fontSize: fontSize + 'px' }"></div>
|
cs |
css 속성키도 지원해서 아래 코드도 가능하다
1
2
|
<div :style="{ 'font-size': fontSize + 'px' }"></div>
|
cs |
탬플릿을 깔끔하게 만드려면 스타일 객체에 직접 바인딩 해도 좋다
조건부 랜더링
- v- if
1
|
<h1 v-if="awesome">Vue is awesome!</h1>
|
cs |
- v-else
: v-else 엘리먼트는 v-if 다음에 와야한다. 그렇지 않으면 인식되지 않는다.
1
2
3
4
|
<button @click="awesome = !awesome">Toggle</button>
<h1 v-if="awesome">Vue is awesome!</h1>
<h1 v-else>Oh no 😢</h1>
|
cs |
-v-else-if
: " else if 블록" 역할을 한다. v-if 여러번 연결 할 수 있다. v-else 엘리먼트는 v-else-if 바로 다음에 와야 한다
1
2
3
4
5
6
7
8
9
10
11
12
|
<div v-if="type === 'A'">
A
</div>
<div v-else-if="type === 'B'">
B
</div>
<div v-else-if="type === 'C'">
C
</div>
<div v-else>
Not A/B/C
</div>
|
cs |
'개발자 > Vue' 카테고리의 다른 글
♣[Vue] <냅다해보기> 부모,자식간 데이터 이동 / emit, computed 등 이용해서 구현해보기 (0) | 2023.02.10 |
---|---|
[Vue] 이벤트 버블링 (0) | 2023.02.10 |
♣[Vue]vue 동작원리 이해해보기(component,App,main.js) / vscode로 v-model/v-if 등 적용해보기 (0) | 2023.02.10 |
[Vue] v-bind/v- if/v-for/input데이터/v-model(데이터 양방향 바인딩) (0) | 2023.02.10 |
[Vue] Vue 란?(MVVM 패턴/적용해보기 예제) (0) | 2023.02.10 |