web-dev-qa-db-ja.com

DeprecationWarning:Collection#find:代わりに関数を渡す

私は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)
9
pnda

他のコマンドの1つにあります。他のコマンドの1つで#Collection.find('name', 'keyname')のようなものを使用している可能性が高いです。

これは#Collection.find(x => x.name === "name")に更新されました。

エラーで言うように。代わりに#Collection.find()には関数が必要です。使用するとエラーがなくなります。

15
NealC