簡體   English   中英

打字稿中的導出功能

[英]Export function in Typescript

我有一個帶有模塊的.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文件添加為另一個文件的依賴項,我可以使用所有函數和模塊。 我可以將它們聲明為私人嗎? 謝謝你,我的英語不好意思。

TypeScript規范有點干,所以這里有一些例子。

例1

module MyModule {
    class MyClass {
        myFunction() {
            alert('Test');
        }
    }

    function myOtherFunction() {
        alert('Test Again');
    }
}

在此示例中, MyModule是一個全局模塊(它不在任何其他模塊中),因此它將出現在定義文件中。 MyClassmyFunctionmyOtherFunction在定義中不可見:

module MyModule {
}

所以要在你的宣言中看到一些東西,它要么......

  1. 需要在全局范圍內,例如MyModule或者像你的例子中populate ,或者

  2. 需要以export關鍵字為前綴

在您的示例中,第1點適用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM