簡體   English   中英

如何修復代碼:'ERR_REQUIRE_ESM' const { nanoid } = require("nanoid");

[英]HOW TO FIx code : 'ERR_REQUIRE_ESM' const { nanoid } = require("nanoid");

如何解決它,我正在做應用程序聊天。 對不起,如果語言難以閱讀,我是泰國人。

PS C:\Users\ADMIN\Desktop\chat\server> node server.js
C:\Users\ADMIN\Desktop\chat\server\server.js:4
const { nanoid } = require("nanoid");
               ^
[ERR_REQUIRE_ESM]: require() of ES Module 
C:\Users\ADMIN\Desktop\chat\server\node_modules\nanoid\index.js from 
at Object.<anonymous> (C:\Users\ADMIN\Desktop\chat\server\server.js:4:20) {
code: 'ERR_REQUIRE_ESM'



{
"name": "chat",
"version": "1.0.0",
"description": "",
"main": "server.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node server.js"
},

“關鍵字”:[],“作者”:“”,“許可證”:“ISC”,“依賴項”:{ “表達”:“^4.18.1”,“nanoid”:“^4.0.0”,“ socket.io": "^4.5.1" } }

這意味着您嘗試要求的庫無法使用require語法導入。

我認為您使用的nanoid版本需要使用import

您可以嘗試降級nanoid或切換到import關鍵字。

問題是您使用的是 nanoid Ver.4.0.0。 V.4 中的一個新特性(對 ESM 的支持)似乎是一個制動變化。

完整文檔位於 nanoid GitHub 存儲庫中 issue#365 的鏈接中。

幫助我和我的解決方案的評論來自@salyndev0

要解決此問題,請執行以下步驟:

  • 卸載 nanoid: npm uninstall nanoid

  • 安裝支持所有 3.xx 的版本 3: npm install nanoid@^3.0.0

暫無
暫無

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

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