ホームページ  >  に質問  >  本文

Discord.js インタラクティブ コレクターが適切に実行できず、エラー メッセージが表示されませんでした

コマンドが使用されているチャネルとは別のチャネルにメッセージを送信するスラッシュ コマンドを備えたボットがあります。メッセージには 2 つのボタンがあり、ボタンが押されると、ボタンをクリックしたユーザーの名前が console.log に記録されます。スラッシュ コマンド ファイル全体は次のとおりです:

リーリー

ただし、ここが重要です:

リーリー

メッセージ ボタンの 1 つを押すと、Discord では「このインタラクションは失敗しました」と表示されるだけですが、コンソールにはエラーは表示されず、ボットはクラッシュしません。それは何もしません。私はここのドキュメントに従っています: https://discordjs.guide/message-components/interactions.html#awaiting-components。

ドキュメントにあるような response ではなく、message に基づいて収集しているためではないかと考えています。しかし、本当に反響だけを集めることができるのでしょうか?これは正しくないようです。私が何を間違えたのでしょうか?

P粉974462439P粉974462439369日前653

全員に返信(1)返信します

  • P粉513318114

    P粉5133181142023-09-17 00:43:45

    Button ではなく StringSelectMenu コンポーネントを収集しているため、対話は失敗します。

    次の行を変更してください:

    リーリー ###への変更:### リーリー

    ボタンを収集するには、

    i.customId を使用します。 参照:

    ComponentType

    返事
    0
  • キャンセル返事