강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

웹나그네님의 프로필 이미지
웹나그네

작성한 질문수

실전 연습으로 익히는 고급 타입스크립트 기술

연습문제 풀고 행운 테스트 하기 🍀

섹션 7의 연습문제의 의도를 잘 모르겠습니다.

해결된 질문

작성

·

269

·

수정됨

1

UserPath를 ExtractPathParams에서 제네릭으로 받으라는 건지 아니면 이걸 바로 ExtractPathParams에 넣으라는 건지 이해가 잘 안 갑니다😂

제 생각에는 UserPath를 바로 ExtractPathParams 넣으라는 의미로 받아들여서 그렇게 풀었습니다.

답변 1

0

애프터캠프님의 프로필 이미지
애프터캠프
지식공유자

다시 보니까 그러네요...

문제를 좀 더 의도가 분명하게 수정했습니다.

이러면 좀 더 문제 출제의도가 분명할까요? 😅

export type Expect<T extends true> = T;
export type Equal<X, Y> = (<T>() => T extends X ? 1 : 2) extends <
        T,
    >() => T extends Y ? 1 : 2
    ? true
    : false;

type UserPath = ["users", ":id"];
type UserOrgPath = ["users", ":id", "orgs", ":orgId"];

type ExtractPathParams<T extends string[]> = unknown;

type tests = [
    Expect<Equal<ExtractPathParams<UserPath>, { id: string }>>,
    Expect<Equal<ExtractPathParams<UserOrgPath>, { id: string, orgId: string }>>,
];

 

웹나그네님의 프로필 이미지
웹나그네
질문자

아 이름 그대로 기본적으로 제공하는 Extract 처럼 사용하면 되는군요.

제가 급한 마음에 생각이 못미쳤나봅니다😅

감사합니다.

애프터캠프님의 프로필 이미지
애프터캠프
지식공유자

아 아닙니다!

제가 뭔가 문제가 애매모호하게 출제했네요

웹나그네님의 프로필 이미지
웹나그네

작성한 질문수

질문하기