语法错误:意外的保留字“await”

nik*_*szz 2 javascript node.js discord discord.js

即使我处于异步函数中,我仍然收到此错误......

import { dirname, join } from "path";
import { fileURLToPath } from "url";
const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

export async function importer(client) {
    const dir = join(__dirname, "../../commands/")

    const commandCategories = readdirSync(dir)
    for (let cat of commandCategories) {
        const commandFiles = readdirSync(join(dir, cat)).filter(files => files.endsWith(".js"));

        for (const file of commandFiles) {
            const command = await import(join(dir, cat, file));
            client.commands.set(command.default.name, command.default);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

我有什么遗漏的吗?import我绝对需要in中的 wait 部分const command。它导入一些命令,然后在控制台输出上删除标题中提到的错误。

谢谢。

Che*_*yDT 6

问题不在于importer代码,而在于您尝试导入的模块之一(并import在解析它时崩溃)!

这是节点中的一个错误,当在动态过程 中遇到此语法错误时,会抛出这样一个无用的错误import

尝试在导入文件之前记录文件名,以便您可以看到哪个文件崩溃了。一旦您知道哪个文件无法解析,请对其进行静态导入以进行测试,这样您就可以获得正确的错误,告诉您哪一行有问题。