我有一个.ts
文件,其中包含模块和模块外部的函数,如下所示:
$(function () {
populate()
});
function populate() {
...
}
module portfolio.charts {
export function foo(){
...
}
}
使用Typescript编译器命令tsc --declaration
创建声明文件。此.d.ts
文件包含以下代码:
function populate(): void;
module portfolio.charts {
function foo(): void;
}
为什么导出populate()
函数和portfolio.charts
模块?我认为有必要使用关键字export
来导出函数或模块。如果我将d.ts
文件添加为另一个文件的依赖项,我可以使用所有函数和模块。我可以将它们声明为私人吗?谢谢,抱歉我的英语。
答案 0 :(得分:7)
TypeScript规范有点干,所以这里有一些例子。
示例1
module MyModule {
class MyClass {
myFunction() {
alert('Test');
}
}
function myOtherFunction() {
alert('Test Again');
}
}
在此示例中,MyModule
是一个全局模块(它不在任何其他模块中),因此将出现在定义文件中。 MyClass
,myFunction
和myOtherFunction
在定义中不可见:
module MyModule {
}
所以要在宣言中看到一些东西,它要么......
需要在全球范围内,例如MyModule
或类似populate
或
需要以export
关键字
在您的示例中,第1点适用。