TypeError: Class extends value undefined is not a constructor or null - Node.js

TypeError: Class extends value undefined is not a constructor or null - Node.js

我尝试在我的 index.js 中使用 Clear,但代码不起作用,它扩展了 class Clear by Moderation 以获取 Moderation 方法。

完全错误:

class Clear extends Moderation {
                    ^
TypeError: Class extends value undefined is not a constructor or null
    at Object.<anonymous> (C:\Users\Chigu\SoftKr\Asuha-Discord-Universal-Bot\Src\Actions\Moderation\Commands\Clear.js:5:21)
    at Module._compile (internal/modules/cjs/loader.js:1133:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
    at Module.load (internal/modules/cjs/loader.js:977:32)
    at Function.Module._load (internal/modules/cjs/loader.js:877:14)
    at Module.require (internal/modules/cjs/loader.js:1019:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (C:\Users\Chigu\SoftKr\Asuha-Discord-Universal-Bot\Src\Actions\Moderation\Moderation.js:2:17)
    at Module._compile (internal/modules/cjs/loader.js:1133:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)

Process finished with exit code 1

Clear.js

const Discord = require("discord.js");
const {Moderation} = require("../Moderation");

class Clear extends Moderation {
    constructor(message, client) {
        super(message, client);
        this.command = "clear";
   } //methode and code
}

module.exports = {
    Clear
}

Moderation.js

const {Clear} = require("./Commands/Clear");

class Moderation {
    constructor(message, client, staff, prefix) {
        this.message = message;
        this.client = client;
        this.staff = staff;
        this.prefix = prefix;
    } //methode and code
}

module.exports = {
    Moderation,
}

会不会是循环依赖问题?您正在将每个 class 导入另一个。您是否尝试从 Moderation.js 中删除此行?

const {Clear} = require("./Commands/Clear");

我也遇到了同样的错误,按照说的做了,但是没有解决办法

然后我从nodejs版本安装了16.14.0 LTS,问题就解决了。