TypeScript + Dojo + AMD?

Posted

技术标签:

【中文标题】TypeScript + Dojo + AMD?【英文标题】:TypeScript + Dojo + AMD? 【发布时间】:2012-10-10 13:04:46 【问题描述】:

有使用 AMD 与 TypeScript 和 dojo AMD 的例子吗?继续获取“3”而不是对象(tslab == 3):

    require( ["TypeScriptLab"], function ( tslab )
    
        new tslab.Tests().run();
     );

TypeScript 看起来像这样:

export class TypeScriptLab 
    test() 
    

生成的 JS 如下所示:

define(["require", "exports"], function(require, exports) 
    var TypeScriptLab = (function () 
        function TypeScriptLab()  
        TypeScriptLab.prototype.test = function () 
        ;
        return TypeScriptLab;
    )();
    exports.TypeScriptLab = TypeScriptLab;    
)

【问题讨论】:

忘了说我用的是dojo 1.8.0 【参考方案1】:

我定义了我的包:

<script>
    dojoConfig = 
        async: true,
        packages: [
             name: "TSLab", location: "/IPS" 
        ]
    ;
</script>

并添加了命名空间前缀:

    require( ["TSLab/typeScriptLab"], function ( tslab )
    
        new tslab.Tests().run();
     );

模块现在加载。

【讨论】:

以上是关于TypeScript + Dojo + AMD?的主要内容,如果未能解决你的问题,请参考以下文章

如何从AMD dojo创建构建

是否可以通过 dojo 的 AMD 加载器向 dojo 模块请求添加请求参数

dojo 1.7 AMD 框架有啥好处?

如何在 Dojo AMD 中包含遗留模块

使用 Dojo AMD 加载程序加载 jQuery 问题

AMD/Dojo 1.7 单页应用程序:将 Require() 放在哪里?