跳至主要內容

no-useless-empty-export

禁止在模組檔中對不出任何效用的空輸出。

🔧

這條規則報告的一些問題可由 --fix ESLint 指令列選項自動修正.

在 TypeScript 程式碼中,有時候會需要用空的 export {} 陳述式,才能將原本將會是指令碼檔的程式碼變為模組檔。根據 TypeScript Handbook Modules 頁面 說明

在 TypeScript 中,包含頂層輸入或輸出的任何檔案都會被視為模組,這和 ECMAScript 2015 一樣。相反地,沒有任何頂層輸入或輸出宣告的檔案,則會被視為指令碼,其內容可供全域範圍 (包含模組) 使用。

不過,如果檔案中有任何其他頂層輸入或輸出陳述式,則 export {} 陳述式就不會執行任何動作。

這條規則會報告在已使用 ES 模組的檔案中對任何不執行任何動作的 export {} 陳述式。

.eslintrc.cjs
module.exports = {
"rules": {
"@typescript-eslint/no-useless-empty-export": "error"
}
};

在遊樂場中嘗試這個規則 ↗

範例

export const value = 'Hello, world!';
export {};
在遊樂場中開啟
import 'some-other-module';
export {};
在遊樂場中開啟

選項

這個規則不可設定。

何時不使用

如果您不介意在檔案的底部有一個空的 export {},您可能不需要這個規則。

資源