我正在使用NodeJS制作Discord机器人。但是,当我尝试运行它时,它告诉我它无法找到模块discord.js-commando
。
这是我的机器人代码。
const commando = require('discord.js-commando');
class DiceRollCommand extends commando.Command {
constructor(client) {
supern (client, {
name: 'roll'
group: 'random'
memberName: 'roll'
description: 'Rolls a die'
});
}
async run(message, args){
var roll = Math.floor(Math.random() * 6) + 1;
message.reply("You rolled a " + roll);
}
}
module.exports = DiceRollCommand;
`
答案 0 :(得分:0)
对于Discord,需要安装Discord.js和Commando模块,它们是分开的。还要确保至少在Node 7.6上
尝试:
const body = JSON.parse(event.body)
const code = body.code
更新
npm install discord.js-commando --save
使用全局标志。因此,如果您的目录结构如下所示:
npm install discord.js-commando --save -g
这意味着Node期望在与file.js相同的目录中存在node_modules,它无法找到。将其移动到根目录,或者全局安装模块。
答案 1 :(得分:0)
您的主文件夹中是否存在node_modules目录?如果是这样,并且您的程序在另一个文件夹中,则必须执行以下操作:
const commando = require('../node_modules/discord.js-commando');
'..'返回目录。因此,如果程序位于文件夹内的文件夹中,则必须执行以下操作:
const commando = require('../../node_modules/discord.js-commando');
我遇到了同样的问题,并且此问题得以解决。但是,如果仍然无法正常工作,请评论项目的结构以及node_modules和程序目录的位置。