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