私はdiscord.jsが初めてで、冬のシーズンに向けてボットを構築しています。と呼ばれる機能を構築してい!gift
ます。これにより、仮想的に人々にギフトを贈ることができます。(お金などではありません)。Keyv を使用して、各ユーザーがこれまでに受け取ったギフトの数を保存しています。ここに私のコードがあります -
client.on('message', message => {
const args = message.content.slice(config.prefix.length).trim().split(/ +/g);
const command = args.shift().toLowerCase();
if (command === 'gift') {
let sender = message.author.username;
let receiver = message.mentions.users.first();
let [sender1, gift] = args;
if (keyv.get(receiver) === undefined) {
keyv.set(receiver, giftcount);
}
let prevvalue = keyv.get(receiver).then(prevvalue => {
return;
});
let currentval = keyv.set(receiver, prevvalue+=1).then(currentval => {
return;
});
};
//message.channel.send(currentval);
message.channel.send(sender + ' has gifted ' + receiver + ' ' + gift + '! They have ' + currentval + ' gifts right now.');
});
を追加する前に.then()
、メッセージを送信すると、
They have [object Promise] gifts right now.
私の友人は.then()
、それを修正するために追加することを提案しました。
上記のコードを実行すると、次のエラーが表示されます -
ReferenceError: currentval is not defined
誰か助けてくれませんか?