私はnode.jsの初心者であり、現在discord.jsを使用してDiscordボットを作成しています。ボットコマンドが使用されるとすぐに、コンソールはDeprecationWarningを出力します。例えば:
(node:15656) DeprecationWarning: Collection#find: pass a function instead
(node:15656)
は時々別の数字であり、ほぼ常に変化します。
これは私のコードの外観です(1つのコマンドのみ、複数ありますが、すべてのコマンドでこのエラーが発生します)。
const botconfig = require("./botconfig.json")
const Discord = require("discord.js");
const bot = new Discord.Client();
bot.on("ready", () => {
console.log(`Launched ${bot.user.username}...`);
bot.user.setActivity("Games", { type: "PLAYING" });
});
bot.on("message", async message => {
if (message.author.bot) return;
let prefix = botconfig.prefix;
let messageArray = message.content.split(" ");
let cmd = messageArray[0];
let args = messageArray.slice(1);
let botico = bot.user.displayAvatarURL;
if (cmd == `${prefix}help`) {
let helpEmbed = new Discord.RichEmbed()
.addField(".kick", "kick a user", true)
.addField(".ban", "ban a user", true)
.addField(".unban", "unbans a user", true)
.addField(".mute", "mutes a user over a period of time", true)
.setColor("#005b5f")
.setThumbnail(botico);
message.channel.send(helpEmbed);
console.log(`command used: help`);
};
});
bot.login(botconfig.token)
他のコマンドの1つにあります。他のコマンドの1つで#Collection.find('name', 'keyname')
のようなものを使用している可能性が高いです。
これは#Collection.find(x => x.name === "name")
に更新されました。
エラーで言うように。代わりに#Collection.find()には関数が必要です。使用するとエラーがなくなります。