首页 > 解决方案 > 不和谐.js | 聊天记录 (txt) 已保存

问题描述

我遇到了一个 discord.js 票证命令的问题。当我使用脚本命令时,会创建一个 .txt 文件并将其发送到频道中,这很好用。问题是文件被保存在本地,这不是我想要的。

创建txt+发送的代码:

fs.writeFileSync(`${message.channel.name}.txt`, content.join('\n'), err => { if (err) throw err });

doneEmbed(message, lang.ticket.transcript.replace('{name}', `${message.channel.name}.txt`));
return message.channel.send(new MessageAttachment(`${message.channel.name}.txt`, `${message.channel.name}.txt`));

doneEmbed只是一个预先创建的嵌入,以使代码更清晰,以防你感到困惑:

//Emoji file
const e = require('../../data/config/emojis.json');

//Embed
module.exports.doneEmbed = function doneEmbed(message, desc) {
    let embed = new MessageEmbed()
        .setDescription(e.done + desc)
        .setColor(c.done)
    message.channel.send(embed);
}

保存成绩单的文件结构(| exstare.txt & | test.txt):

文件结构

提前致谢!

标签: javascriptdiscord.jsfs

解决方案


您的应用程序需要先保存文件,然后再将其作为附件发送。这就是为什么它需要保存文件。

但是对于这个问题有一个简单的解决方案。如果您不希望文件永久存储在项目文件夹中,只需在使用 Discord 机器人将文件作为附件发送后删除文件即可。在这个网站上查看一些如何使用FileSystem删除文件的示例:https ://www.tutorialkart.com/nodejs/delete-a-file-in-nodejs-using-node-fs


推荐阅读