Discord.js: Menyelesaikan "message.content tidak mempunyai sebarang nilai" Isu
Dalam Discord.js versi 12 dan kemudian, sifat message.content pada mulanya mempunyai nilai rentetan kosong apabila menerima acara mesej. Ini berlaku disebabkan oleh perubahan dalam keperluan API Discord, di mana kandungan mesej tidak lagi disediakan melainkan diminta secara eksplisit.
Penyelesaian
Untuk mendapatkan semula kandungan mesej, dayakan Mesej Niat kandungan pada portal pembangun anda:
Pengubahsuaian Kod
Dalam Discord.js versi 13 dan kemudian:
const { Client, GatewayIntentBits, Partials } = require('discord.js'); const client = new Client({ intents: [ GatewayIntentBits.DirectMessages, GatewayIntentBits.Guilds, GatewayIntentBits.GuildBans, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent, ], partials: [Partials.Channel], });
Dalam Discord.js versi 12:
const { Client, Intents } = require('discord.js'); const client = new Client({ intents: [ Intents.FLAGS.GUILDS, Intents.FLAGS.GUILD_MESSAGES, Intents.FLAGS.MESSAGE_CONTENT, ], });
Jangan lupa gunakan acara messageCreate dan bukannya mesej untuk pengendalian mesej:
client.on('messageCreate', (message) => { // Your message handling logic goes here });
Dengan mendayakan niat Kandungan Mesej dan mengubah suai kod anda dengan sewajarnya , anda kini boleh mengakses kandungan mesej dalam pengendali acara Discord.js anda.
Atas ialah kandungan terperinci Mengapakah `message.content` kosong dalam bot Discord.js saya, dan bagaimana saya membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!