Skip to content
← Back to rules

promise/prefer-await-to-callbacks 스타일

작동 방식

이 규칙은 비동기 코드 처리 시 전통적인 콜백 함수 대신 async/await를 사용하도록 권장합니다. async/await는 2017년에 도입된 기능으로, 비동기 코드를 작성할 때 더 명확하고 간결한 구문을 제공하여 가독성과 유지보수성을 높입니다.

왜 문제인가요?

콜백을 사용하면 '콜백 혼란'이라고 불리는 복잡하고 중첩된 구조가 생길 수 있으며, 이는 코드의 가독성과 유지보수성을 저하시킵니다. 또한 콜백에서는 에러 처리가 복잡해질 수 있지만, async/await를 사용하면 에러 처리를 보다 직관적인 try/catch 블록으로 쉽게 관리할 수 있습니다.

예시

이 규칙에 부적절한 코드 예시:

js
cb();
callback();
doSomething(arg, (err) => {});
function doSomethingElse(cb) {}

이 규칙에 적절한 코드 예시:

js
await doSomething(arg);
async function doSomethingElse() {}
function* generator() {
  yield yieldValue((err) => {});
}
eventEmitter.on("error", (err) => {});

사용 방법

이 규칙을 구성 파일 또는 CLI를 통해 활성화하려면 다음을 사용할 수 있습니다:

json
{
  "plugins": ["promise"],
  "rules": {
    "promise/prefer-await-to-callbacks": "error"
  }
}
bash
oxlint --deny promise/prefer-await-to-callbacks --promise-plugin

참고 자료