>

webpack과 awesome-typescript-loader를 사용하여 노드 모듈을 묶고 있습니다. 번들 모듈을 다른 패키지로 가져오고 있습니다. 다른 패키지 내에서 오류가 발생합니다 :

Could not find a declaration file for module 'mymodule'

패키지의 기본 내보내기는 초기화 된 클래스입니다 :

import MyClass from './myClass';
const c = new MyClass();
export default c;

내 패키지에서 가져옵니다 :

import c from 'mymodule';

MyClass는 파일 내에 입력되지만 모듈에서 .d.ts 파일을 내보내려면 어떻게합니까? 다른 패키지가 MyClass 유형에 대해 알고 있습니까?


  • 답변 # 1

    types.d.ts 를 추가 할 수 있습니다  lib 폴더에 파일을 추가하고 types: "./types.d.ts" 를 추가하십시오.  그것의 package.json 에 재산 .

    이것은 TS가 당신의 lib가 내보내고있는 모든 타입에 접근 할 수있게합니다.

    그러나 이러한 유형을 직접 작성해야합니다.

    더 나은 해결책은 TS가 그 d.ts 를 생성하게하는 것입니다  당신을 위해 파일. declaration: true 를 활성화하면이를 달성 할 수 있습니다  당신의 tsconfig.json 에서  파일.

  • 이전 Visual Studio 편집기에서 공간, 탭, CRLF 문자 표시
  • 다음 r - quantstrat에서 주문 파일을 CSV 파일로 작성