수색…


소개

기존의 일부 JavaScript 라이브러리에는 유형 정의 파일 이 있지만 그렇지 않은 라이브러리가 많이 있습니다.

TypeScript는 누락 된 선언을 처리 할 수있는 몇 가지 패턴을 제공합니다.

어떤 전역 선언

때로는 단순한 프로젝트에서 특히 any 유형의 전역을 선언하는 것이 가장 쉽습니다.

jQuery에 타입 선언이 없다면 ( 그렇게 ), 당신은

declare var $: any;

이제 $를 사용하면 any 입력 any .

기본값을 내보내는 모듈 만들기

더 복잡한 프로젝트의 경우 또는 점진적으로 종속성을 입력하려는 경우 모듈을 만드는 것이 더 깔끔할 수 있습니다.

JQuery를 사용하여 (비록 타이핑이 가능 하지만) 예제로 :

// place in jquery.d.ts
declare let $: any;
export default $;

그리고 프로젝트의 모든 파일에서 다음을 사용하여이 정의를 가져올 수 있습니다.

// some other .ts file
import $ from "jquery";

이 가져 오기 후에 $any 입력 any .

라이브러리에 여러 최상위 변수가있는 경우 대신 이름으로 내보내기 및 가져 오기 :

// place in jquery.d.ts
declare module "jquery" {
   let $: any;
   let jQuery: any;

   export { $ };
   export { jQuery };
}

그런 다음 두 이름을 가져 와서 사용할 수 있습니다.

// some other .ts file
import {$, jQuery} from "jquery";

$.doThing();
jQuery.doOtherThing();

주변 모듈 사용

가져 오기의 의도 를 나타 내기만하면 (전역을 선언하고 싶지는 않지만) 명시 적 정의를 고집하지 않으려는 경우 주변 모듈을 가져올 수 있습니다.

// in a declarations file (like declarations.d.ts)
declare module "jquery";    // note that there are no defined exports

그런 다음 주변 모듈에서 가져올 수 있습니다.

// some other .ts file
import {$, jQuery} from "jquery";

위의 선언 된 모듈 (예 $jQuery )에서 가져온 것은 any 유형입니다.



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow