実現したいこと
Discord.jsで、まず1つメッセージが来ると、もう一つメッセージが来るのを待ってそれで2つになります。どちらとも別々にメッセージを取得できるようにしたいです。
発生している問題・分からないこと
メッセージで、
a
b
(aとbそれぞれ別メッセージ)と送信したら
Collected b
Collected 1 items
b
b
Collected 0 items
undefined
undefined
とコンソールに出力されて、
初心者から見るんですが最後のbしか取得できていなくて、それ以外の動きはよくわかりません。本当に申し訳ないです。
該当のソースコード
TypeScript
1import type * as discord from "discord.js"; 2 3export function messages(client: discord.Client) { 4 client.on("messageCreate", (message) => { 5 const collector = message.channel.createMessageCollector({ 6 time: 15_000, 7 }); 8 9 collector.on("collect", (m) => { 10 console.log(`Collected ${m.content}`); 11 }); 12 13 collector.on("end", (collected) => { 14 console.log(`Collected ${collected.size} items`); 15 const firstContent = collected.first()?.content; 16 const lastContent = collected.last()?.content; 17 console.log(`${firstContent}\n${lastContent}`); 18 }); 19 }); 20} 21
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
Googleで検索しても全然出てこなく、(私の検索方法が悪いと思われます。)
teratailでも全然出てこなく、
ソースコードを変更してもおかしくなり、
知人に聞いてもめんどくさそうにしていて、
AIに聞いてもよくわからない返答しか返ってきませんでした。
補足
Node.jsバージョン: v20.12.2
npmバージョン: 10.5.0
discord.jsバージョン: 14.15.2
typescriptバージョン: 5.0.0
![guest](/img/icon/icnUserSample.jpg)
回答1件
あなたの回答
tips
プレビュー