참고: How return await can slow down your code
async function example() {
const server = await createServer();
const endpoints = await createEndpoints(server);
return await startServer(server, endpoints);
}
참고: Why React.FC dosen't allow me to just return children?
children은 React.ReactNode 타입인데, React.FC 함수가 반환하는 리턴 타입과 다르기 때문에 생기는 문제.
type ReactNode = ReactChild | ReactFragment | ReactPortal | boolean | null | undefined;
// React.FC의 반환 타입
ReactElement<any, any> | null;
참고: ko.javascript.info, velog-커링에-대해-알아보자
활용 예제
const myUpdater =
(newTodo: TodoType) =>
(prevQueryData: TodoType[]) =>
prevQueryData.map(prevQueryData, (prevTodo) => {
if (prevTodo.id === newTodo.id) {
return newTodo;
}
return prevTodo;
})
// ...
queryClient.setQueryData(
todosQueryKey(),
myUpdater(newTodo),
)
커링 전
const myUpdater =
(prevQueryData: TodoType[], newTodo: TodoType) =>
prevQueryData.map(prevQueryData, (prevTodo) => {
if (prevTodo.id === newTodo.id) {
return newTodo;
}
return prevTodo;
})
// ...
queryClient.setQueryData(
todosQueryKey(),
(prevQueryData) => myUpdater(prevQueryData, newTodo),
)