我正在TypeScript使用discord.js. 當我今天早上嘗試編譯代碼時,我收到了這個錯誤:
C:\SECRET\Kostegator\dist\Util\getMeme.js:17
const node_fetch_1 = __importDefault(require("node-fetch"));
^
Error [ERR_REQUIRE_ESM]: require() of ES Module C:\SECRET\Kostegator\node_modules\node-fetch\src\index.js from C:\SECRET\Kostegator\dist\Util\getMeme.js not supported.
Instead change the require of index.js in C:\SECRET\Kostegator\dist\Util\getMeme.js to a dynamic import() which is available in all CommonJS modules.
at Object.<anonymous> (C:\SECRET\Kostegator\dist\Util\getMeme.js:17:38)
at Object.<anonymous> (C:\SECRET\Kostegator\dist\Util\index.js:15:14)
at Object.<anonymous> (C:\SECRET\Kostegator\dist\Commands\BotOwner\startAutoUpdate.js:4:16)
at C:\SECRET\Kostegator\dist\Client\index.js:61:41
at Array.forEach (<anonymous>)
at ExtendedClient.<anonymous> (C:\SECRET\Kostegator\dist\Client\index.js:58:48)
at Generator.next (<anonymous>)
at C:\SECRET\Kostegator\dist\Client\index.js:27:71
at new Promise (<anonymous>)
at __awaiter (C:\SECRET\Kostegator\dist\Client\index.js:23:12)
at ExtendedClient.init (C:\SECRET\Kostegator\dist\Client\index.js:51:16)
at Object.<anonymous> (C:\SECRET\Kostegator\dist\index.js:19:4) {
code: 'ERR_REQUIRE_ESM'
}
這是 GitHub 存盤庫:Kostegator
uj5u.com熱心網友回復:
當前版本node-fetch僅與 ESM 匯入(使用import)兼容,而不與 CommonJS 模塊中使用require().
您有以下選擇需要修復:
將您的專案切換到 ESM 模塊并使用
import fetch from 'node-fetch';.在最新版本的 nodejs 中,您可以使用
let fetch = await import('node-fetch').node-fetch使用仍然支持加載的v2 版本,require()如檔案中所述。
uj5u.com熱心網友回復:
使用最新更新,node-fetch僅適用于使用import
您可以通過以下方式安裝它的舊版本
npm i [email protected]
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/419747.html
標籤:
