Typescript 如何编写相同的自定义模块并导入其他模块?
在vs.net 2013中使用TypeScript时,我正在编写相同的自定义模块m1文件: MyClass1.ts: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
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>