TypeScript와 Dojo를 동시에 배우고 있으며 이로 인해 AMD에 대한 제한적인 이해가 노출되었습니다. 제 3 자 "dgrid/Grid"AMD 모듈, 내 dgrid.d.ts 스텁 선언 및 내 소비 클래스에 import 문을 함께 묶는 방법을 이해하지 못합니다. 낭비 노력 2 일 후 나는 다음과 같은 실행하기 (해키 또는 AMD 모범 사례) 어떤 방법을 찾고 있어요 :TypeScript에서 dgrid에 대한 참조 구문 가져 오기
MyModule.ts
{
...
var myGrid = new dgrid.Grid({ /*col structure*/}, "divId");
...
}
여기 dgrid 내 스텁 선언 파일이. 빨간색
module "dgrid/Grid"
{
export class Grid
{
constructor (gridStructure: any, elementId: string);
}
}
내 소모 타이프 라이터 클래스에 다음 참조를 시도했지만 비주얼 스튜디오는 "dgrid/그리드"를 강조한다 (아래 업데이트 1과 동기화 편집) 문자
dgrid.d.ts 왜냐하면 TS 컴파일러는 default.htm 파일의 기본 Dojo dojoConfig, baseUrl 및 dgrid 패키지 선언을 인식하지 못하기 때문입니다. 나는 공식 타이프 라이터 설명서의 10 장을 읽어 게시 이후
///<reference path='dgrid.d.ts' />
import Grid = module("dgrid/Grid");
module MyModule
{
...
}
업데이트 1 . 이전에는 모듈 MyType {} 또는 모듈 "external/thirdparty"{}로 선언 된 모듈의 중요성을 인식하지 못했습니다. 외부 모듈에 대한 앰비언트 선언은 리터럴이어야합니다.
배경 :
- 내가 ajax.googleapis.com에서 참조 도장 1.8.0를 사용하고는/dgrid
- 나는 밀접에
- 자바 스크립트 /의 JS에 로컬로 호스팅되는 dgrid을 시도하고있다 dgrid http://dojofoundation.org/packages/dgrid/tutorials/hello_dgridhttp://dojofoundation.org/packages/dgrid/tutorials/hello_dgrid/demo/simple.html
문을 필요 :
require(["dgrid/Grid", "dojo/domReady!"],
function(Grid){
아직 작업 솔루션이 없습니다. 나는이 질문을 포기하지 않았다. TypeScript import 문은 코드를로드하는 AMD 스타일 모듈 코드를 생성하지만로드 된 모듈을 새로운 (abe) 유형으로 구체화하지는 않는다. 나는 전체 모듈 네임 스페이스가 프로토 타입 아래에 앉아있는 것을 본다. 나는이 문제를 다루기 위해 또 다른 질문을 올릴 것이다. – camelCase
좋습니다. 그 질문에 대한 링크를 여기에 게시 할 수 있습니까? – Valentin