Tag 와 Promise, 그리고 add() 펑션에 관한 질문입니다.
420
작성한 질문수 28
안녕하세요. 너무 좋은 강의 잘 듣고 있습니다.
공부하다가 막히는 부분이 있어서 질문 올립니다.
- MainController.js 파일의 시작 부분을 보면 다음과 같은 부분이 있습니다
"const tag = '[MainController]' "
위와 같이 스트링으로 MainController 값을 집어 넣는 것을 처음 보는데, 이 부분은 어떤 명령어가 어떻게 처리하는 건가요?
마찬가지로, View.js 파일의 시작 부분에서도 "const tag = '[View]' " 부분이 있는데요, 이유와 쓰임세가 궁금합니다.
KeywordModel.js 파일 안을 보면 Promise가 변수에 담기지 않고 바로 "new Promise" 식으로 구현이 되었습니다. 그럼 이 Promise의 instance는 무엇이 되는 건가요?
이하는 코드 부분입니다.
list() {return new Promise(res => { // 변수에다가 담지 않고 바로 new Promise를 했는데,
// 이경우 그럼 Promise의 instance는무엇인가요?
setTimeout(() => {
res(this.data)
}, 200)
})
}
}
- HistoryModel.js 파일에서 add() 펑션 관련 질문입니다.
아래 코드를 보면 궁금한 점이 두가지 있습니다.
a) const date = '12.31'
이 부분은 이렇게 해 버리면 나중에 수정이 안되지 않나요?
근데 바로 아래줄에 this.data =[{keyword, date}, ...this.data] 이런식으로 나오면
저 자료를 계속 활용한다는 이야기인데.
굳이 const 와 스트링 조합으로 한 이유가 있나요?
b) some(item=> item.keyword == keyword)) 에서 item이 뜻하는게 뭔지 궁금합니다.
add(keyword = '') { keyword = keyword.trim()
if (!keyword) return
if (this.data.some(item => item.keyword === keyword)) {
this.remove(keyword)
}
const date = '12.31'
this.data = [{keyword, date}, ...this.data]
}
답변 7
2
질문이 여러개라 하나씩 답변 드리겠습니다.
질문1:
const tag = '[MainController]'
이유와 쓰임세가 궁금
답변1:
개발할때 디버깅 용으로 사용하는 태그입니다.
예를들어 console.log(tag, 'hello world')로 로그를 남기면
"[MainController] hellow world" 문자열이 개발자 콘솔에 남는거죠.
1
질문2:
Promise의 instance는 무엇이 되는 건가요?
답변2:
프로미스 객체가 반환되는 것이죠
'그게 그말 아닌가요?' 라고 하실것 같네요.
list().then(fn).catch(fn) 형태로 사용할수 있습니다.
0
질문4:
some(item=> item.keyword == keyword)) 에서 item이 뜻하는게 뭔지 궁금합니다.
답변4:
this.data.some(...) 으로 실행하는 배열 함수입니다.
data 배열 데이터를 보면 답이 나오는데요
data: [
{ keyword: '검색기록2', date: '12.03' },
{ keyword: '검색기록1', date: '12.02'},
{ keyword: '검색기록0', date: '12.01' },
],
배열 요소인 {keyword: ' ', date: ' '} 가 item 변수로 들어옵니다.
0
질문3:
const date = '12.31'
이 부분은 이렇게 해 버리면 나중에 수정이 안되지 않나요?
근데 바로 아래줄에 this.data =[{keyword, date}, …this.data] 이런식으로 나오면
답변3:
상수 date는 아래 구문에서 객체의 값으로 사용됩니다.
따라서 this.data로 접근하면 변경가능하구요.
강사님, 브랜치명 어떻게 만드셨어요?
2
209
1
이미지 파일 업데이트가 안돼있는 거 같습니다
1
502
1
git사용법을 잘 모르겠습니다..
1
495
1
@event 질문입니다.
1
254
1
return 문자열이 여러줄은 어떻게 설정하나요?
1
645
2
탭뷰에서 이벤트를 받아서 메인컨트롤러에게 전달만해주는 방식도 괜찮나요?
1
257
1
ResultComponent.vue 에러?
1
251
1
선생님 안녕하세요!
0
247
1
return new Promise 와 return Promise.resolve
2
474
1
바닐라
1
320
1
실습 관련 질무
1
248
1
event.preventDefault() 문의
1
291
1
컴퍼넌트 질문이 있습니다.
0
210
1
return this에 대해서 (재업로드)
0
355
1
return this에 대해서 이해가 잘 되지 않아요
0
1175
1
강의 내용을 따라 했는데도 안되는 문제
1
309
2
크롬으로 로컬 띄었더니 에러가나네요
1
323
0
에러가 나네요
1
329
2
git checkout 중에 질문드립니다.
1
302
1
bindEvent 메소드를 왜추가하는지 궁금해서 질문드립니다.
2
576
1
안녕하세요 vue.js 처음 입문하는데 강사님 강의로 시작하게 되었습니다.
0
217
1
index 페이지에서 main.js 관련 질문입니다
1
203
1
학습내용 정리 관련 질문입니다!
0
179
1
lite-server로 구현해야하는 이유는 무엇인가요~?
1
522
2





