[javascript] Bluebird를 사용한 실제 예제를 보여주세요.
Bluebird는 JavaScript에서 Promise를 지원하는 라이브러리이며, Promise 기반의 비동기 코드를 더 쉽게 다룰 수 있도록 도와줍니다. 아래에서는 Bluebird를 사용하여 간단한 비동기 호출을 처리하는 예제를 보여드리겠습니다.
Bluebird 설치
먼저 Bluebird를 프로젝트에 설치해야 합니다. 다음 명령을 사용하여 npm을 통해 Bluebird를 설치할 수 있습니다.
npm install bluebird
Bluebird로 비동기 호출 다루기
아래 코드는 Bluebird를 사용하여 간단한 비동기 호출을 다루는 예제입니다. Bluebird.promisify를 사용하여 기존 콜백 기반의 함수를 Promises를 반환하는 함수로 변환합니다.
const promise = require('bluebird');
// 콜백 기반의 비동기 함수
function asyncFunction(callback) {
setTimeout(() => {
callback(null, '작업 완료');
}, 1000);
}
// Bluebird를 사용한 Promises로 변환
const promisedAsyncFunction = promise.promisify(asyncFunction);
// Promises 사용
promisedAsyncFunction()
.then((result) => {
console.log(result);
})
.catch((error) => {
console.error(error);
});
위 예제에서는 Bluebird의 promisify
메서드를 사용하여 기존 콜백 기반의 asyncFunction
을 Promises를 반환하는 함수로 변환하고, 그 후에 Promises를 사용하여 비동기 작업을 다루고 있습니다.
Bluebird를 사용하면 복잡한 비동기 코드를 간결하고 가독성 좋게 작성할 수 있으며, 에러 핸들링도 더 용이해집니다.
참고 자료
위의 예제는 Bluebird를 사용하여 비동기 코드를 처리하는 간단한 방법을 보여주고 있습니다. Bluebird를 통해 Promises를 쉽게 다룰 수 있어서, 프로젝트에서 비동기 작업을 다루는 데에 유용하게 활용할 수 있습니다.