首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >discord.js某些频道嵌入

discord.js某些频道嵌入
EN

Stack Overflow用户
提问于 2021-04-21 03:22:22
回答 1查看 42关注 0票数 1

我想知道如何使它在哪里,如果你放在某个渠道的图像,它变成了一个嵌入。

我当前的代码是:

代码语言:javascript
复制
const Discord = require("discord.js");
const { MessageEmbed } = require("discord.js");
const { Client, RichEmbed } = require("discord.js");

module.exports = {
    name: 'icon',
    run: async(client, message, args) => {
        if(message.channel.id === '708914703338045491'){
        message.delete();
        let usermsg = args.slice(0).join(" ");

        const embed = new MessageEmbed()
        .setColor("#2f3136")
        .setImage(usermsg);

        message.delete().catch();
        message.channel.send(embed)
    }
  }
}
EN

回答 1

Stack Overflow用户

发布于 2021-04-21 06:25:01

如果您将图片上传到邮件中,它将保存到message.attachments中,因此您可以使用此集合进行检查。不一致附件可以是文件,也可以是视频,所以你需要检查文件格式,简单的方式--它的检查结束链接到内容中的一种有效格式,所以我创建了2个函数。

for

  • First: for find attachment
  • Second: validate to content a image format in url

代码语言:javascript
复制
const { MessageEmbed } = require("discord.js");
const avalibleFormats = ['png', 'gif', 'jpeg', 'jpg']
module.exports = {
    name: 'icon',
    run: async(client, message, args) => {
        if (message.channel.id !== '708914703338045491') {
            return;
        }

        let image = getImage(message)
        if (!image) {
            return;
        }

        let embed = new MessageEmbed();
        embed.setImage(image.url)
        message.channel.send(embed)
    }
}

const getImage = (message) => message.attachments.find(attachment => checkFormat(attachment.url))
const checkFormat = (url) => avalibleFormats.some(format => url.endsWith(format))
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67185115

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档