#javascript #node.js #discord.js
Вопрос:
В настоящее время я работаю над командой показать профиль пользователя с использованием и внедрением, но каждый раз, когда команда используется, текст добавляется снова. поэтому, если вы используете команду дважды, вы видите текст дважды и так далее. Я пытался найти решение около часа, но ничего не могу найти. Я также несколько раз пытался переписать код, и в настоящее время у меня есть это
const { discord, MessageEmbed } = require('discord.js');
const embed = new MessageEmbed();
const users = require('../users.json');
const stand = require('../standsInfo.json');
module.exports = {
name: 'profile',
description: 'show the users profile',
execute(message, args) {
var user = message.author;
var xpNeeded = (users[user.id].level (users[user.id].level 1))*45;
embed.setTitle(`${user.username}'s profile`);
embed.setThumbnail(user.displayAvatarURL());
embed.addField('level', `${users[user.id].level}`);
embed.addField('experience', `${users[user.id].xp}/${xpNeeded}`);
message.channel.send({embeds: });
}
}
правка: итак. Я только что понял, что было не так, я использовал addField вместо SetField
Комментарии:
1. Переместитесь
const embed = new MessageEmbed();
внутрь областиexecute
видимости, это опечатка2. @iunfixit, это не опечатка. Это логическая ошибка. Вы должны опубликовать ответ. Типографская ошибка-это когда ваш палец ударяет
j
вместоk
.
Ответ №1:
Переместитесь const embed = new MessageEmbed();
внутрь области выполнения. В противном случае вы будете продолжать редактировать одну и ту же вставку и отправлять ее снова с добавленными полями
const { discord, MessageEmbed } = require('discord.js');
const users = require('../users.json');
const stand = require('../standsInfo.json');
module.exports = {
name: 'profile',
description: 'show the users profile',
execute(message, args) {
var user = message.author;
var xpNeeded = (users[user.id].level (users[user.id].level 1))*45;
const embed = new MessageEmbed();
embed.setTitle(`${user.username}'s profile`);
embed.setThumbnail(user.displayAvatarURL());
embed.addField('level', `${users[user.id].level}`);
embed.addField('experience', `${users[user.id].xp}/${xpNeeded}`);
message.channel.send({embeds: });
}
}