학습 배경
학습 계획 및 일정
학습 내용
학습 후기
웹팩이란? 뷰 컴포넌트를 자바 스크립트로 모듈화 하여 브라우저에서 실행 가능하도록 도와주는 프레임워크 , 로더 ,빠른 컴파일의 장점이 있다.
1) npm install -g vue-cli
2) vue init webpack vue-calculator
-respond to the (y/n)
3) cd vue-calculator
4) npm run dev
DB에 저장하는것이 아니라 배열에 저장한 방식사용
라우터 부분 ( C + U, R ,D )
Update부분은 따로 Vue 컴포넌트를 만들지않고 Create부분을 재사용.
- /create/:contentId? (물음표를 넣음으로써 파라미터를 넣을때와 넣지않을때 구분가능)
- index가 넘어가면 해당 index의 게시글 정보를 불러와서 수정페이지로 이동
- index가 넘어가지 않으면 일반 첫 게시글 생성 페이지로 이동
```vue
<template>
<div>
<input v-model ="writer" placeholder="글쓴이" /><br>
<input v-model ="title" placeholder="제목" /><br>
<textarea v-model ="content" placeholder="내용" /><br>
<button @click ="write">작성</button>
</div>
</template>
<script>
import data from '@/data'
export default {
name :'Create',
data() {
return{
data : data,
writer:"",
title : "",
content:""
}
},
methods: {
write(){
this.data.push({
writer:this.writer,
title:this.title,
content:this.content
})
this.$router.push({
path:'/'
})
}
}
}
</script>
```
- **Router와 Route 의 차이**
-
- Router란 특정 페이지를 접근할때 접근할 페이지 정보와 주소를 설정할수 있는것
Vue-router를 적용하게되면, $route 객체를 통해 브라우저에서 현재 url에 대한 정보를 가져올 수 있습니다.
- Router에서 Route를 설정한다고 보면된다.
mac 계산기 => Vue 를이용하여 CSS 구현
일반적인 사용법
새로운 함수 정의 방식으로 기존보다 더 짧은 코드로 선언할 수 있다는 장점이 있음.
// 일반적인 자바스크립트 함수(ES5)
function (인자) {
함수 로직
}
// 화살표 함수(ES6)
(인자) => {
함수 로직
}
console.log("Hello " + a + " I'm " + b + " year's old")
보는것과 같이 띄어쓰기도 일일이 해야하고 +로 이어줘야 하므로 번거롭다.
하지만 ES6는 아주 편하게 할 수 있음.
console.log(`Hello ${a} I'm ${b} year's old`)
이처럼 ``에 넣어주고 변수는
${}`사이에 넣어주면 위와 같은 결과를 얻을 수 있다.
1번에서 설명한 것과 같이 공백과 따옴표도 그대로 출력이 되어 간단하게 사용할 수 있다!
this.current = this.current + number; // 일반적인 String append 방법
this.current = `${this.current}${number}`;