Typescript 0.9.1.1模块被拆分为几个.ts文件
Typescript 0.9.1.1 module splitted into several .ts files
我正试图弄清楚如何在多个文件中定义模块的各个部分。我使用--module amd
标志编译以下TypeScripts,并使用require.js库加载构建的JavaScript文件。
文件:rm.ts
export module rm {
export function init():void {
console.log("rm.init() called");
this.candidate.init();
}
}
文件:候选者.ts
export module rm.candidate {
export function init() {
console.log("rm.candidate.init() called");
}
}
文件:main.js(用于require.js)
require(["rm"], function (exports) {
console.log(exports);
exports.rm.init();
});
此调用:this.candidate.init()
不起作用,因为candidate.js未包含在require.js.中
如何定义rm.ts中candidate.ts依赖关系?在我尝试的时候,是否可以在多个文件中定义"子模块"?
通过对rm.ts的这些调整,它可以工作,但似乎不是预期的方式。
import candidateTS = require("candidate");
export module rm {
export var candidate = candidateTS.rm.candidate;
export function init():void {
console.log("rm.init() called");
this.candidate.init();
}
}
也许我应该提到我第一次使用TypeScript。网络上几乎所有处理这个主题的例子都引用了旧版本的TypeScript,所以我不知道如何继续。
使用模块加载程序时,通常会删除module
声明,并将文件视为模块。例如
文件:候选人.ts
export function init() {
console.log("rm.candidate.init() called");
}
文件:rm.ts
import c = require('candidate');
export function init():void {
console.log("rm.init() called");
c.init();
}
您可以看到,您使用import
语句加载它们,并且您提供的别名(例如下面的c
)是加载模块的句柄。
import c = require('candidate');
c.init();
相关文章:
- 操作员”;新的“;根据我想在几个JavaScript文件中使用的类,在JavaScript中使用
- 可以't将几个数字设置为<输入类型=“;数字“>
- 当加载几个js文件时,defer属性应该如何工作
- 使用几个<脚本>标签不会't工作-只调用一个脚本
- 如何从数组中删除几个相同的项
- 包括php文件和几个js文件
- 在几个元素上模拟onclick事件
- 如何更改与Backbone集合中的模型相关联的几个元素的css属性
- 如何在几个jQuery对象上调用jQuery函数
- 用PHP/MMySQL和JavaScript填充几个HTML分区
- 点击几个按钮后动态网站更改
- d3日历视图:如何将所有内容放在一个svg中,而不是放在几个svg中
- 在JavaScriptES6中,如何从散列中只获取几个属性
- 多个 $(document).ready(function() 但只有前几个被解雇
- 几个用于布线的角度模块
- 使用 1 函数使一个值等于几个不同的变量
- 几个jQuery日期选择器小部件,只向其中一个添加类
- 如何将文本插入到几个带有 id 的文本区域中的一个文本区域中
- 在几个浏览会话中保存javascript变量
- Typescript 0.9.1.1模块被拆分为几个.ts文件