해결된 질문
작성
·
147
0
왜 mutationfn은 비동기 함수를 할당해주고
async () => {
return createTodo(todoInput)}
왜 queryfn은 그냥 일반 함수를 할당한건가요?
() => getTodo(),
차이가 무엇인지 궁금합니다.
답변 1
0
앗 큰 뜻은 없습니다. 결국 두 함수 모두 Promise를 리턴하는데, async를 쓰거나 그냥 일반 함수로 콜백을 작성하셔도 됩니다.
강의에서는 별다른 로직을 넣지는 않았지만, 보통 createTodo같은 실제 오퍼레이션 외에도 필드 validation 로직을 넣거나 로깅을 추가하는 등 다른 함수들을 호출할 수 있어요. 그러다보니 평소에 작성하던 async를 붙이는 습관이 나왔나봅니다 😂
결론은 Promise를 리턴하도록(createTodo/getTodo) 작성하기만 한다면 async를 붙이든 안붙이든 동일한 효과를 봅니다.