오늘의 수확

Inhyeeee·2020년 12월 29일
0

코딩 삽질 기록

목록 보기
10/20

자산관리 웹페이지 프로젝트를 하면서 한가지 아쉬웠던 것이 화면 로딩 시간이 길었던것...

오늘 노마드 코더의 바닐라 js를 듣다가 우연하게
자바스크립트의 promise라는 객체가 있다는 것을 알았다.

then이 뭔지 몰라서 찾던 중에 뜻밖의 수확...
역시 지속적으로 공부해야 싱크홀들을 메꿀 수 있는 것 같다...ㅠㅠㅠㅠ

Promise

주로 서버에서 받아온 데이터를 화면에 표시할 때 사용한다.
API를 통해 데이터를 받았는데, 그 과정에서 덜 받았는데 다짜고짜 화면을 띄우느라 빈화면이 뜨는 것을 방지하기 위한 방법

getData().then(function(fn1)){
	console.log("확인해 보거라~~")
}

이런 형태로 쓰고 getData() 실행이 끝나면 then()이 호출되는 방식인 것임

promise 3 status

pending(대기): 비동기 처리 로직이 아직 완료되지 않은 상태

new Promis(function(resolve, reject){

});

fulfilled(이행): 비동기 처리 완료되어 프로미스가 결과값 반환한 상태

new Promis(function(resolve, reject){
	resolve();
});

getData().then(function(data){
	//then 사용 가능
});

rejected(실패): 비동기 처리 실패

new Promis(function(resolve, reject){
	reject();
});

getData().then(function(data){
	console.log("error 확인해~~")
});

promis 에러 처리에는 handleSuccess, handleError, catch가 있는데
catch() 방법을 권장한다고 함...

참조 링크

profile
avocadoxxi

0개의 댓글