discord.js 将消息作为代码块发送?
Posted
技术标签:
【中文标题】discord.js 将消息作为代码块发送?【英文标题】:discord.js Send message as code block? 【发布时间】:2017-11-01 05:14:37 【问题描述】:我正在尝试制作一个将消息发送到我的频道的机器人,但在代码块中,因为使用 RichEmbed 不起作用。
我查看了其他一些机器人,它们会发送这样的消息
```
Their title
Body text blah blah
```
我想发送类似的东西,但是当我尝试时
var msg = ```
Their Title
Body text blah blah
```;
和
var msg = "```
Their Title
Body text blah blah
```";
这些不起作用。
const Discord = require("discord.js");
const bot = new Discord.Client();
const TOKEN = "MY_TOKEN_ID";
bot.on("message", function(message)
console.log(message.content);
if ( message.author.equals(bot.user))
return;
message.channel.send(msg);
);
bot.login(TOKEN);
我的代码在上面,你知道如何发送代码块吗?
【问题讨论】:
在您执行var msg " "
的第二个示例中,它没有等号。是它在你的代码中的样子还是你在这个例子中忽略了它。
我只是在示例中省略了它,现在修复它。
“不起作用”不是很有帮助。你期待什么与你实际看到什么?
【参考方案1】:
你试过用这个吗?
var msg = "```Their Title\nBody text blah blah```";
\n 是一个新行,它基本上是在写入时按 ENTER 键。 之后您可以将其作为普通短信发送。
【讨论】:
谢谢这个作品,不知道你可以添加\n,以为他们会直接打印\n。【参考方案2】:function codeblock(
language:
| "asciidoc"
| "autohotkey"
| "bash"
| "coffeescript"
| "cpp"
| "cs"
| "css"
| "diff"
| "fix"
| "glsl"
| "ini"
| "json"
| "md"
| "ml"
| "prolog"
| "py"
| "tex"
| "xl"
| "xml",
code: string,
)
return `\`\`\`$language\n$code\`\`\``;
用法
const msg = codeblock("css", `
#element
width: 500 px;
.button
width: 300 px;
`);
【讨论】:
【参考方案3】:有点奇怪,但你也可以...
msg.channel.send(
content: "Please send this as a code block !",
code: "js"
);
【讨论】:
【参考方案4】:如果有人还在寻找,你可以这样做:
const codeBlock = require("@discordjs/builders");
<channel>.send(codeBlock("js", 'var foo = "bar";'));
【讨论】:
以上是关于discord.js 将消息作为代码块发送?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 discord.js 代码块中对 json 对象值进行排序?
Discord.js 使用@person 和#channel 发送消息