Nullish coalescing (??) 运算符仅适用于节点版本 14 and above,它目前位于 LTS 上,尽管 discord.js 版本 13 和以上需要节点version 16,被npm标记为Current并包含最新功能,错误只是表明您的节点版本低于14。
您可以尝试以下方法:
方法一:
• 创建默认为节点版本 14 的 bash repl 并进一步安装依赖项 AbortController-Polyfill 以满足 discord.js v13 需要运行的功能的要求
像这样全局定义 AbortController:
const { AbortController } = require('abortcontroller-polyfill/dist/cjs-ponyfill');
global.AbortController = AbortController;
方法二
第1步:
将此添加到您的package.json,(这不是恶意的,它将版本更新到节点 16 并强制在 repli 时清理 npm 缓存,因此 repli 可能不会拒绝该过程)
"scripts": {
"start": "node .",
"node-update": "npm i --save-dev node@16 && npm config set prefix=$(pwd)/node_modules/node && export PATH=$(pwd)/node_modules/node/bin:$PATH",
"node-clean": "rm -rf node_modules && rm package-lock.json && npm cache clear --force && npm cache clean --force && npm i",
"ez-v16": "npm run node-update && npm run node-clean-cache"
}
第2步:
在你的 shell 中运行它
`npm 运行 ez-v16`
并按下运行按钮。