1
에 열거 인스턴스를 형식화
나는 물체에 대응하는 열거 형 멤버에 열거의 문자열 인스턴스를 변환 다음과 같은 방법이 있습니다는 타이프
function transformEnum<TBase>(base: TBase, member: keyof TBase, enumInstance: any) {
base[member] = enumInstance[base[member]];
}
그것은 다음과 같이 불렀다 :
transformEnum(result, "day", DayOfWeek);
인가 거기에 어떤 방법을 enumInstance
변수를 입력 할 수 있습니까? 타이핑은 완벽 할 필요는 없지만 적어도 어느 정도는 제한적입니다. 되어
transform<DayOfWeek>(() => result.day, (x) => { result.day = x; }, DayOfWeek);
나는 '대해서 typeof 된 요일'유형의
[TS] 인수를 얻을 :
또는 나는
function transform<T>(get:() => T, set: (x: T) => void, enumInstance: T) { set((enumInstance as any)[get()]); }
을 시도했습니다하지만 지금처럼이를 호출 할 때 'DayOfWeek'유형의 매개 변수에 할당 할 수 없습니다.
가 확인하시기 바랍니다 : http://stackoverflow.com/questions/17380845/how-to-convert-string-to-enum-in - typypript –
@BalajiV 내 코드 샘플을 읽으면 내가하는 일을 알게 될 것이다. 질문은 변환하는 방법이 아니라 함수 매개 변수를 입력하는 방법입니다. –