여기에 일부 tsconfig 옵션이없는 것 같습니다.자동으로 모듈의 typescript 정의 파일을 바꿉니다.
{
"compilerOptions": {
"target": "ES5",
"module": "commonjs",
"removeComments": true,
"noImplicitAny": false,
"preserveConstEnums": true,
"declaration": true,
"suppressImplicitAnyIndexErrors": true,
"outDir": "../js"
},
"filesGlob": [
"./**/*.ts",
"!./node_modules/**/*.ts"
]
}
내 선언이 자동으로 생성됩니다 : 내 tsconfig의 존재와
export class HelloWorld {
constructor(public greeting: string){}
}
: 예를 들어,
내가 NPM 모듈을 만드는 오전 : 일을
무엇 임은 아주 간단합니다 다음과 같이 보입니다.
export declare class HelloWorld {
greeting: string;
constructor(greeting: string);
}
하지만 실제로 다른 프로젝트에서 npm 패키지를 설치하면 제대로 작동하지 않습니다. 나는 패키지를 가져올 때 나는 사용해야합니다 :
내가 모듈declare module "hello-world" {...}
에서 선언 파일을 포장 할 때
import hello = require("hello-world");
가 원하는 그런 다음 내가 가져올 수 있다는 것을 발견
(예를 들어)
import hello = require("hello-world/js/index");
생성 된 정의 파일을 수동으로 줄 바꿈하는 것은 옵션 자체가 아니기 때문에 언제든지 자체적으로 다시 쓸 수 있습니다. 패키지의 이름을 package.json
에서 가져 와서 자동으로 해당 모듈에 정의를 래핑하는 옵션이 있습니까?
당신은 '수출 기본 클래스하여 HelloWorld'를 시도 않은 : 당신이 쓸 때
다음 이러한 변화에 패키지를 설치 한 후, 컴파일러는 그것을 해결할 수 있습니까? – baryo@baryo 예 차이가 없음 – Tom
package.json을 게시 할 수 있습니까? – baryo