1
내 TypeScript 열거 형을 전역으로 만들어 응용 프로그램간에 가져올 필요가 없습니다.Node.js에 전역 TypeScript Enum을 등록하는 방법
내가 지금까지 가지고 :
읽기 state.enum.ts
export enum ReadState {
Unread = 4000,
Read = 4001
}
enums.ts index.ts에서 다음
import { ReadState } from './read-state.enum';
const enums = {
ReadState
}
global['Enums'] = enums;
declare var Enums: typeof enums;
import './enums'; // do this once to initialize enums
var _enums = Enums; // [ts] Cannot find name 'Enums'.
런타임에 이것이 작동하는 동안, 나는 abl이 아니다. e 파일이 모듈이기 때문에 declare var Enums: typeof enums;
을 통해 enum을 참조하십시오.
향후 열거 형 정의를 별도의 파일로 유지하면서 모듈을 가져 오지 않고이 형식 정의를 참조하려면 어떻게해야합니까?
업데이트 : 또한 함수의 반환 형식을 ReadState
열거 형으로 설정해야합니다. 나는이 가지고있는 현재 선택한 답변에 따라
: 다른 파일에서
import { ReadState } from './read-state.enum';
const enums = {
ReadState: ReadState
}
declare global {
const Enums: typeof enums;
}
을 나는 이러한 기능에 대한 반환 유형을 설정하고 싶지만 타이프 라이터가 불행하십시오 declare global
function getState1(): Enums.ReadState {
return Enums.ReadState.Unread;
}
function getState2(): typeof Enums.ReadState {
return Enums.ReadState.Read;
}
완벽! Ryan에게 감사드립니다. – kenhowardpdx
내 질문에 더 많이 추가했습니다. 함수 반환 형식에 문제가 있습니다. – kenhowardpdx