enum vs as const
509
작성한 질문수 1
실제 서비스를 만드시면서 enum을 많이 사용하시나요? enum보다 as const로 사용하는 것이 훨씬 좋다는 글을 봐서 여쭤봅니다.
const phoneType = ['home', 'office', 'studio'] as const;
type PhoneType = typeof phoneType[number];
이렇게도 쓸 수 있을 거 같은데 실무에서 어떤 방법을 더 선호하시나요?
그리고 이렇게 만든 경우에 interface는 [phone: PhoneType] : {} 이렇게 작성할 경우 오류가 뜨는데, interface를 만들 때 key를 string으로 넓게 잡는 것이 아니라 원하는 문자열만 될 수 있도록 범위를 좁히는 방법이 있나요? (아래처럼 사용하고 싶어서요)
type PhoneNumberDictionary {
[phone in PhoneType]: {
num: number;
};
}
위처럼 코드를 작성할 경우 아래와 같은 에러가 발생합니다ㅠㅠ

답변 2
0
https://engineering.linecorp.com/ko/blog/typescript-enum-tree-shaking/
이런 글을 봤었어서 혹시 현업에선 어떻게 사용하고 계시는지 궁금하여 여쭤봤습니다!
아래 문제는 해결했습니다~!
0
안녕하세요, 좋은 질문이네요. 이넘보다 as const가 좋다는게 어떤 부분인가요? 자료 공유해 주시면 저도 봐볼게요. 본문에 첨부해 주신 코드는 전체를 올려주셔야 도와드릴 수 있을 것 같아요 :)
TSLint
0
77
1
vscode eslint server 오류
0
97
1
안녕하세요. 기본타입- 튜플, 객체, 진위값 부분의 영상의 화면이 나오질 않습니다.
0
87
1
live server 설치 오류
1
400
2
강의 교안 pdf 는 따로 제공하지않나요?
0
294
2
npm i 설치 이유 문의
1
431
3
index.ts Delete `␍`eslintprettier/prettier 오류(빨간줄) 해결
2
303
3
vue 에서 jquery 사용 문제
1
711
2
TSLint 확장 프로그램은 현재 지원하지 않는다고 합니다.
1
510
2
강의 내용처럼 노란 밑줄이 작동하지 않아서 유사 질문들을 실행해보았는데요
1
553
1
section 3-1 JSdoc 타입이 추론되지 않아서 다음과 같이 수정했는데 이거 맞나요?
1
465
2
함수에 리턴 안됐다고 노란밑줄이 쳐져야하는데 없습니다
2
463
1
파일이 다른데 식별자가 중복되었다고 뜹니다.
1
461
2
빨간줄 에러 질문드립니다
1
499
2
마우스 갖다대면 리턴값 설명 나오는 거 질문드려요
1
367
2
js에서 @ts-check 적어도 체크하지 못하는 문제입니다
2
406
2
index.html에서 타입스크립트 콘솔 찍는 법 질문드립니다
1
579
2
섹션 1-3 추론 질문드립니다
1
362
2
왜 api쪽에는 왜 에러가 안나는지 궁금합니다.
1
334
2
const item1을 선언했을 때 타입을 선언해줘도 괜찮을까요?
1
404
1
전화번호부 타입선언
1
275
2
타입을 전역으로 분리
1
604
2
객체 선언 시 구분자는 쉼표, 세미콜론 모두 사용가능한건가요?
1
462
1
Git 관련 질문이 있습니다
1
674
2





