[typescript] 모듈 내에서 전역 변수 호출

Projects.ts부트 스트랩 플러그인에 선언 된 전역 변수를 참조하고 싶은 typescript 파일이 bootbox.js있습니다.

bootboxTypeScript 클래스 내에서 호출 된 변수에 액세스하고 싶습니다 .

가능합니까?



답변

컴파일러에게 선언되었다고 알려줘야합니다.

declare var bootbox: any;

더 나은 유형 정보가 있으면 대신 대신 추가 할 수 있습니다 any.


답변

이미 모르는 사람들을 위해 다음 과 같이 declare진술서를 외부에 배치해야 class합니다.

declare var Chart: any;

@Component({
  selector: 'my-component',
  templateUrl: './my-component.component.html',
  styleUrls: ['./my-component.component.scss']
})

export class MyComponent {
    //you can use Chart now and compiler wont complain
    private color = Chart.color;
}

에서 TypeScript당신이에서 유래되지 못한 변수를 정의 할 위치를 선언 키워드를 사용하는 TypeScript파일을.

컴파일러에게 런타임 에이 변수가 값을 가질 것이라는 것을 알고 있으므로 컴파일 오류가 발생하지 않습니다.


답변

그것이 참조하지만 변경하지 않는 것이면 다음을 사용하십시오 const.

declare const bootbox;


답변

Sohnee 솔루션은 더 깨끗하지만 시도해 볼 수도 있습니다

window["bootbox"]


답변

전체 프로젝트에서이 변수에 대한 참조를 원하면 d.ts파일을 작성 하십시오 (예 🙂 globals.d.ts. 다음과 같이 전역 변수 선언으로 채우십시오.

declare const BootBox: 'boot' | 'box';

이제 다음과 같이 프로젝트의 어느 곳에서나 참조 할 수 있습니다.

const bootbox = BootBox;

다음은 입니다.


답변

부트 박스 타이핑 다운로드

그런 다음 .ts 파일 내에 참조를 추가하십시오.


답변