#javascript #arrays #discord #discord.js
#javascript #массивы #Discord #discord.js
Вопрос:
Это код:
const args = msg.content.trim().split(/ /);
const cmd = args.shift().toLowerCase();
if (cmd === 'dm') {
(await client.users.fetch(args[0]))
.send(args[1])
.catch(() => {
console.log('Error while sending message.')
})
}
что я хочу: dm <идентификатор пользователя>
что я делаю: dm <my_id> тестовое тестирование тест 123 что я получаю: тест
может кто-нибудь объяснить мне, как это исправить? бот отправляет только первое слово моего сообщения: / любая помощь приветствуется!
Ответ №1:
Это должно сделать работу.
const args = msg.content.trim().split(" ");
const cmd = args.shift().toLowerCase();
if (cmd === 'dm') {
// Clone the args array in case you need it later
const argsClone = args.slice()
// Fetch user while removing their id from the list
const user = await client.users.fetch(argsClone.shift())
// Send the remaining of the list as a DM.
user.send(argsClone.join(" "))
.catch(() => {
console.log('Error while sending message.')
})
}
Комментарии:
1. Рад видеть, что я помог. Не могли бы вы, пожалуйста, проверить ответ как проверенный, если он сработал, и проголосовать за него, если он вам нравится? Спасибо.