Typescript 如何编写相同的自定义模块并导入其他模块?

Typescript 如何编写相同的自定义模块并导入其他模块?,typescript,requirejs,Typescript,Requirejs,在vs.net 2013中使用TypeScript时,我正在编写相同的自定义模块m1文件: MyClass1.ts: module m1{ export class MyClass1{ test1(){ } } } MyClass2.ts: /// <reference path="MyClass1.ts" /> import Flux = require("flux"); module m1{ class MyFluxDispatcher extend

在vs.net 2013中使用TypeScript时,我正在编写相同的自定义模块m1文件:

MyClass1.ts:

module m1{
  export class MyClass1{
    test1(){
    }
  }
}
MyClass2.ts:

/// <reference path="MyClass1.ts" />
import Flux = require("flux");
module m1{
  class MyFluxDispatcher extends Flux.Dispatcher<any>{
    ...
  }
  export class MyClass2{
    test2(){
      var c1 = new m1.MyClass1();   <--- Error 81 Property 'MyClass1' does not exist on type 'typeof m1'.
    }
  }
}
在html中:

<script src="~/Scripts/require.js" data-main="/js/main.js"></script>

在使用commonjs/require时,以您现在的方式使用模块是毫无用处的,因为其中的每个文件本身就是一个“模块”。网站上有一个关于requires的部分,您可以在这里阅读更多关于这方面的内容。还要进一步了解CommonJSIT本身,因为它与requires和typescript如何协同工作密切相关

这样做对你来说应该更有效:

MyClass1.ts

导出默认类MyClass1{
test1(){
}
}
MyClass2.ts

从“/MyClass1.ts”导入MyClass1;
导出默认类MyClass2{
test2(){
var c1=新的MyClass1();
}
}

如果你搜索它,有很多关于它的信息,一个很好的开始就是查看CommonJS和RequireJS,然后了解它是如何工作的。希望这有帮助,如果有任何问题,请返回mi

但我需要在internet浏览器上运行AMD JS,CommonJS用于服务器端。我希望在同一模块中为每个类键入一个文件。
<script src="~/Scripts/require.js" data-main="/js/main.js"></script>