2017-02-10 4 views
0
내가 타이프에서 다음과 같은 방법을 호출 할

의 모든 기능 및 인터페이스 :가져 오기 유형 정의

nlp.text("Hi Dr. Miller the price is 4.59 for the U.C.L.A. Ph.Ds.").sentences.length 
// 1 

올바른 import 문이 날이 types definition에서이 작업을 수행 할 수 있도록하는 것입니다 무엇을?

text()은이 정의에서 함수 및 다양한 방법의 이름입니다. 전자는 매개 변수를 사용하지만 메서드는 매개 변수를 사용하지 않습니다. 나는이 기능에 관심이있다.

나는 어떤 기호가 js 파일 here에 정의 된 NLP 기능을 제공하는지 잘 모르겠습니다.

답변

1
import * as nlp from 'library' 
// import { text } from 'library' - this would be much better 

const length = nlp.text("...").sentences.length 
// const length2 = text("...").sentences.length - using the second type of import 

물론 'library'을 가져 오는 패키지의 이름으로 바꿔야합니다.

interface Nlp { 
    text(string: string, options?: any): Text 
    sentence(string: string): Sentence 
    // ... 
} 

function iTakeAnNlp(input: Nlp): void { 
    // ... 
} 

iTakeAnNlp(nlp) 
+0

: 가져온 객체에게 유형을주고, 그것을 어딘가에 사용하려는 경우

, 당신은 (정말이 곳에서 타입 정의를 유지하지만 좋은 생각이 아니다) 이런 일을 할 수 어떻게하면 'nlp'유형의 클래스 속성을 만들 수 있습니까? –

+0

왜 그렇게하고 싶습니까? 당신이 질문에 묘사 한 것을하기 때문에 이것은 완벽하게 작동합니다. –

+0

좋은 질문입니다. 저는 그러한 속성을 만드는 패턴에 익숙해 진 다음 클래스의 메서드 내에서 호출한다고 생각합니다. 예를 들어'someMethod() {let foo = this.nlp.text ('String'). sentences.length}' –

관련 문제