導出
導出聲明
比如變量、函數、類、類型別名或接口等,例如:
export interface DemoType { }
或者
export const demo: number = 10;
當然,別的聲明也可以,這裏就不一一舉例子了。如何記住?在聲明語句的開頭加一個export即可。
導出語句
有時候,我們可能需要先聲明,然後導出,可以使用類似下面的語句:
class DemoClass {}
// 導出
export { DemoClass };
當然,導出的時候,可以修改名稱:
export { DemoClass as ExampleClass };
重新導出
比如我們導出一個功能來自一個已經存在的模塊:
export { demoFun } from "./demo";
或者一個模塊可以包裹多個模塊,並通過下面的語法把他們導出的內容聯合在一起:
export * from "demo";
導入
導入一個模塊中的某個導出內容
import { demoFun } from "./demo";
可以對導入內容重命名
當然,導出的內容可以改名後使用:
import { demoFun as doit } from "./demo";
將整個模塊導入到一個變量,並通過它來訪問模塊的導出部分
比如我們把demo模塊導出成一個變量demo:
import * as demo from "./demo";
那麼,本來的demoFun就可以這樣訪問:
demo.demoFun();
默認導出&導入
導出的時候,只需要把export改成export default即可,例如:
export default function() { }
導入的時候,用一個變量(合理的標誌符即可)接一下就可以了:
import demoFun from "./demo";