가수면
타입스크립트 선언 파일 본문
'개체 리터럴은 알려진 속성만 지정할 수 있으며 '{ name?: string | null | undefined; email?: string | null | undefined; image?: string | null | undefined; }' 형식에 'username'이(가) 없습니다.'
기존 라이브러리 없는 속성을 지정할 경우 이러한 타입 오류가 발생한다.
이 경우 라이브러리에서 선언된 타입에 속성을 추가해주면 된다.
라이브러리에 선언 된 타입 확인하기
DefaultSession에 usename이라는 타입을 추가해주면 된다.
추가하기
// src\types\next-auth.d.ts
import NextAuth, { DefaultSession } from 'next-auth';
declare module 'next-auth' {
interface Session {
user: {
username: string;
} & DefaultSession['user'];
}
}
전역 선언
// 전역 변수
declare const pi = 3.14;
// 전역 함수
declare namespace myLib {
function greet(person: string): string;
let name: string;
}
myLib.greet('캡틴');
myLib.name = '타노스';
'JavaScript > TypeScript' 카테고리의 다른 글
타입스크립트 마이그레이션 (0) | 2023.06.21 |
---|---|
event 타입 (0) | 2023.05.08 |
ref를 props로 넘겨줄 때 (0) | 2023.04.20 |
타입 심화 (0) | 2023.04.12 |
넘어오는 데이터가 두 타입 중 하나일 때 (0) | 2023.04.05 |
Comments