Element implicitly has an 'any' type because expression of type 'string' can't be used to index type '{ week: string; month: string; }'. No index signature with a parameter of type 'string' was found on type '{ week: string; month: string; }'.

박범민·2023년 7월 24일
0

ERROR

목록 보기
6/10
post-thumbnail

문제상황

const title = { week: '주냥이', month: '월냥이' };
const getTitle = ({ type }: { type: string }) => {
    return title[type];
};

이와 같은 코드를 작성했을 때, return title[type]부분에서 에러가 발생함

해결방법

TypeScript에서는 객체에 인덱싱을 할 때, 해당 객체의 타입에 인덱스 시그니처가 없기 때문에 오류가 발생합니다.

interface rankingTitle {
    week: string;
    month: string;
    [key: string]: string;
}
export const useRanking = () => {
    const title: rankingTitle = { week: '주냥이', month: '월냥이' };
    const getTitle = ({ type }: { type: string }) => {
        return title[type];
    };
};
profile
사람은 모로가도 제자리에 놓이게 된다.

0개의 댓글