promise/no-promise-in-callback 의심스러움
작동 방식
오류 우선 콜백 함수 내에서 프로미스 사용을 금지합니다.
왜 문제가 되는가?
프로미스와 콜백을 혼합하면 명확하고 일관되지 않은 코드가 됩니다.
프로미스와 콜백은 비동기 코드를 처리하는 서로 다른 패턴입니다.
이들을 혼용하면 로직 흐름을 따라가기 어렵고, 오류 처리도 복잡해집니다.
왜냐하면 콜백은 오류를 먼저 전달하는 패턴을 사용하지만, 프로미스는 catch를 사용하기 때문입니다.
예시
이 규칙에 잘못된 예시:
js
doSomething((err, val) => {
if (err) console.error(err);
else doSomethingElse(val).then(console.log);
});이 규칙에 올바른 예시:
js
promisify(doSomething)().then(doSomethingElse).then(console.log).catch(console.error);사용 방법
구성 파일 또는 명령줄 인터페이스에서 이 규칙을 활성화하려면 다음을 사용할 수 있습니다:
json
{
"plugins": ["promise"],
"rules": {
"promise/no-promise-in-callback": "error"
}
}bash
oxlint --deny promise/no-promise-in-callback --promise-plugin