인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

Inflearn Community Q&A

dnduf1583778's profile image
dnduf1583778

asked

Next + Create a SNS service with React Query

Displaying different screens based on logout & login status

NextAuth Credentials authorize의 결과 타입

Written on

·

228

0

return {
  name: user.nickname,
  email: user.email,
  image: user.profileImage,
  ...user,
};

강의에서 user를 그대로 리턴해서 사용하지 않고 user를 커스텀해준 것을 보았습니다.

 

현재 return하는 값은 Typescript에서 지정한 User 타입을 그대로 사용하면서 수정해서 값을 할당해줬다고 이해했는데 추가로 들어가는 ...user는 어디에서 사용할 수 있는지 궁금합니다.

 

추가로 제 코드에는 반환하는 정보가 더 많은데 어떤 식으로 값을 할당해서 사용할 수 있는지 궁금합니다.

타입을 하나 만들어서 확장해서 사용하고 싶은데 따로 파일을 만들어줘야 할까요?

reactnext.jsreact-querynext-authmsw

Answer 1

0

zerocho님의 프로필 이미지
zerocho
Instructor

...user는 사실상 사용되지 않습니다.

확장법은 공지사항에 있습니다.

https://www.inflearn.com/news/1219576

 

dnduf1583778님의 프로필 이미지
dnduf1583778
Questioner

공지사항을 못봤네요!

감사합니다!

dnduf1583778님의 프로필 이미지
dnduf1583778
Questioner

새로운 내 정보를 가져오기 위한 API를 추가하는 방법 밖에 없을까요?

현재는 로그인하면 정보를 모두 전달해주고 있습니다.

dnduf1583778님의 프로필 이미지
dnduf1583778
Questioner

jwt가 먼저 호출되는 것 같네요!!

callbacks: {
  async jwt({ token, user }) {
    console.log("jwt callback", token, user);
    if (user) {
      token = { ...token, ...user };
    }
    return token;
  },
  async session({ session, token }) {
    console.log("session callback", session, token);
    return session;
  },
},

이런 식으로 jwt에서 token에 user 정보를 다 넣어주니 session에서도 확인됐습니다!

dnduf1583778's profile image
dnduf1583778

asked

Ask a question