일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- graphQL
- Flutter
- frontend
- GRID
- TypeScript
- HTML
- JavaScript
- DART
- 리액트
- pug
- CLONE
- clonecoding
- 자바스크립트
- express
- react
- form
- Component
- MongoDB
- heroku
- backend
- ES6
- javscript
- Mongoose
- ECMAScript
- API
- NextJs
- nodejs
- node.js
- CSS
- Session
- Today
- Total
목록await (3)
Enjoy Programming

이미 promise에 대해 포스팅을 한적이 있지만 다시 한번 짚고 넘어가자. promises에 대해 알아보기 전에 먼저 비동기성과 동기성에 대해 생각해보자 & Synchronous 동기식 동기.. 참 어려운 말인듯 하다. 검색을 하다보면 정말 각양각색으로 풀이를 해놨다. 대부분 현재 작업의 요청과 응답이 동시에 발생하는 것이라고 기술하고 있는데 필자가 이해하기에는 동시라고 하기엔 같은 시간에 함께 이루어져야 하므로 혼동이 올 수 밖에 없을 것 같다. 필자가 이해하기에는 현재 요청에 대한 응답이 발생함과 동시에 다음 작업을 요청하는 것? 그렇기에 전 후 순서가 있게 이루어지는 것이 동기식이라 생각된다. & Asynchronous 비동기식 비동기란 다수의 작업이 동시에 일어날 수 있다는 의미이다. 동기와 다..

음.. 유튭 클론코딩을 진행하면서 한가지 자꾸 거슬리는 부분이 있는데 multer를 통해 비디오를 db로 업로드 하면 지정한 path에 변환된 fileUrl이 저장되어있다. 문제는 delete키를 눌러 파일을 db에서 삭제를 해도 내 컴퓨터의 path에는 그대로 fileUrl이 저장 되어 있고 삭제가 되지 않았다. 그냥 지우고 싶었다.. ㅎㅎㅎ 그래서 이것 저것 해보던 중 Node.js에서 파일 삭제를 할때 fs모듈(파일시스템)을 이용해 삭제하는 것을 생각했고 deleteVideo 컨트롤러에서 삭제를 진행했다. 우선 fs모듈을 설치: npm install fs 그리고 videoController에 fs를 임포트 해주고 : const fs = require("fs"); 삭제 컨트롤러에서 filePath를..

앞서 모델들을 만들었고 이제 컨트롤러에서 모델들을 연결시켜줘야 한다. 지금은 가짜 데이터베이스가 삭제되었고 현재 홈화면에 진입하면 에러가 발생한다 이제 비디오 컨트롤러에 모델을 임포트 시켜주고 컨트롤러를 조정해줘야 하는데 이때 async와 await, throw를 사용한다. 우선 코드 작성부터 하자. models폴더에 Video모델을 임포트 해주고 홈화면에 진입시 async를 작성해주자 그리고 videos라는 변수에 await과 Video.find를 해준다. 이렇게 하면 Video모델에서 데이터들을 찾아와 videos에 담아주는데 현재는 데이터가 없으니 videos는 빈 배열이다. 이렇게 작성해주면 videos를 완료하기 전까지 home 페이지를 렌더링하지 않고 videos를 완료하면 넘어가게 된다. 기..