타입스크립트 에러 사전유니온 타입에서 메서드를 못 써요“string | number 에서 에러”
메뉴판 › 타입스크립트 에러 사전 › 좁히기·유니온 › 'up'을 넣었는데 string이라 안 받아줘요
error TS2345: Argument of type 'string' is not assignable to parameter of type '"up" | "down"'.
전
function move(dir: "up" | "down") {}
const d = "up";
move(d); // d 는 string 으로 추론후
const d = "up" as const; move(d);
왜 이렇게 되나
- const 로 담은 문자열이 넓은 string 으로 추론돼, 리터럴 유니온 인자에 안 맞는다
됐는지 보는 법
값이 요구 타입으로 좁혀지고 빨간 줄이 없으면 성공.
같은 묶음 · 좁히기·유니온
타입스크립트 에러 사전 · 좁히기·유니온