discord.js 检查公会是否有一个具有特定名称的频道,如果有,则将该频道 ID 存储到一个变量中

我正在使用 discord.js.有没有办法检查一个公会是否有一个具有特定名称的频道,如果有,将该频道 id 存储到一个变量中?我正在尝试创建一个命令,将其操作记录到名为logs"的频道(如果存在).

I am using discord.js. Is there a way to check if a guild has a channel with a specific name, and if so, store that channels id to a variable? I am trying to make a command that logs it's actions to a channel with the name 'logs' if it exists.

推荐答案

A Guild 有一个 channels 属性返回 Collection.使用 Collection.find(),您可以通过比较Channel.name 在谓词函数中.如果找到一个频道,你可以阅读它的 id 属性来检索其雪花 ID.

A Guild has a channels property which returns a Collection of GuildChannels. Using Collection.find(), you can search for the channel by name by comparing Channel.name in the predicate function. If a channel is found, you can read its id property to retrieve its Snowflake ID.

例如...

const channel = /* Guild */.channels.find(c => c.name === 'some-name');
const id = channel ? channel.id : null;

相关文章