업무용 자아를 분리하여 창작물(코드)에 대한 평을 스스로에게까지 끌어오지 말자.
다만 코드가 계속 만족스럽지 못한 평을 받는다면 능력을 객관적으로 평가해볼 필요가 있다.
기능부터 공부하고 스타일은 그 다음이다.
쓸데없는 코드는 빼고 최소한의 코드로 간결하게 작성하는 게 좋은 코드!
줄맞추기/들여쓰기는 디버깅을 위해 정말 중요!
name/value 값으로 한글 no -> DB에 들어갈 때 코드로 들어가기 때문
코드를 계속 쳐서 손이 익숙해지게 해야함!!
속성 공부할 때 중요한 점 : 이게 필수인지 아닌지
var/const/let
-> var는 쓰지말고, 일단 무조건 const, but 밑에서 값이 변경되면 let
component
요소
부분부분 나누기 (매우 중요!)
- header component
- body
- footer component
* 디렉토리까지 쓰면 index 파일의 경우엔 자동인식함(/index.vue 생략 가능)
Not Found
- 위에 안잡힌 모든 '잘못된 주소'를 위함
- NotFound 설정을 위한 path('*')는 반드시 맨 하단에 위치
props
property
부모 컴포넌트 - 자식 컴포넌트로 값 전달할 때 쓰는 기능
변수를 전달할 때는 v-bind를 이용해서 전달한다.
* v-bind:user는 :user과 같다.
emit
자식이 부모에게 값을 전달할 때 쓰는 기능
<alice @updateTodo="updateTodo($event)" />
위의 updateTodo는 원래는 서로 다르다. 왼쪽의 updateTodo는 alice에서 오고 오른쪽의 updateTodo는 parent에게서 온다.
이 호출 메소드, 응답 메소드를 짝지을 수 있어야 한다.
- emit보단 store(vuex)를 쓴다.
event bus
자식 컴포넌트끼리 event를 발생시킬 수 있다.(권장은 하지 않는다. store를 사용하면 된다.)
created() {
EventBus.$on('aliceSaid', message => {this.aliceMessage = message})
},
methods: {whatIsaid: function () {this.count += 1EventBus.$emit('bobSaid', `I don't know. x ${this.count}`)}}
EventBus.$on('받는 이벤트명', 인자(콜백함수) => {
인자로 뭘할건지
})
EventBus.$emit('보낼 이벤트명', '보내는 내용')
Store(Vuex)
Vuex란 state를 관리할 수 있도록 도와주는 상태 관리 라이브러리이다.
보통 Store라고 명칭한다.
react(react에도 있음)랑 vue를 쓰는 이유 중 하나
export default {
state: {
// 담는 그릇 | 프로젝트에서 공통으로 사용할 변수를 정의 | 프로젝트의 모든 곳에서 참조 및 사용 가능(각 컴포넌트에서 동일한 값 사용 가능)
},
getters: {
// 그릇을 내보내는 전용 / getters을 통해 state값을 호출 한다. | computed에 담아야 한다.
},
mutations: {
// state에 요리를 담는 전용 | mutations는 동기적(위의 함수가 실행되고 종료된 후 그 다음 아래의 함수가 실행됨)이어야 함.(비동기 사용 불가) | commit('함수명', '전달인자')로 실행 | mutation 내에 함수 형태로 작성
},
actions: {
// mutations(요리)를 실행시키는 역할 | action은 비동기적(순서에 상관 없이 먼저 종료된 함수의 피드백을 받아 후속 처리) 사용이 가능하다. (action에서 mutation을 호출하는 방법을 권장함) | dispatch('함수명', '전달인자')로 실행 | actions 내에 함수 형태로 작성(비동기 처리이기 때문에 주로 콜백함수로 작성)
}
}
=> store의 기본! 사용법이 정해져 있으므로 그대로 쓰면 됨
Axios
Axios 설치
> npm install axios vue-axios --save
* dependencies : 서비스할 때도 사용됨
* devDependeciesd : 개발할 때만 사용됨
SocketIo
socket 통신 aka. 유선전화
web은 req-res 한번 하면 통신이 끊어짐 => socket이 불가능(계속 통신이 이어져 있어야 함)
ws : web socket (wss: web socket secure)
socketIo로 간단한 채팅 기능을 구현했다.
* io : input, output
* \n : 엔터
느낀 점
하나를 알면 둘을 모르겠다...ㅎㅎ
특히 emit부터 좀 어라? 하다가 store은 이해가 잘 가지 않는다.
기본 개념이 너무 안잡혀있어서 그런가 싶기도 하다.
일단 처음 접하는 것이기 때문에 사용법부터 익히는 게 답...반복하는 수밖에...+구글링도...
'공부 > [TIL] Digital Twin Bootcamp' 카테고리의 다른 글
TIL_211222_Frontend (0) | 2021.12.23 |
---|---|
TIL_211221_Frontend (0) | 2021.12.21 |
TIL_211217_Frontend (0) | 2021.12.17 |
TIL_201216_Frontend (0) | 2021.12.16 |
TIL_211215_BACKEND (0) | 2021.12.15 |