Unturect typeerror TypeError:***不是函数JS v13
我的目标是制作一个菜单选择系统,以打开门票。但是,当它打开门票时,无法访问应该可以访问门票的角色(管理员和主持人)。 你能帮我吗?
这是代码:
Client.on("interactionCreate", interaction => {
if(interaction.isSelectMenu()){
if(interaction.customId === "select") {
console.log(interaction.values);
if(interaction.values == "qst"){
interaction.reply({content: "Vous avez choisi l'option ❓ | Question", ephemeral: true});
nbTicket++;
//Nom du ticket
interaction.guild.channels.create("ticket-" + nbTicket, {
parent: "978962595971211324",
//Permissions
permissionOverwrites: [
{
id: interaction.guild.id,
deny: [Discord.Permissions.FLAGS.VIEW_CHANNEL]
},
{
id: interaction.user.id,
allow: [Discord.Permissions.FLAGS.VIEW_CHANNEL]
},
{
id : interaction.guild.roles.cache("978963146364563456"),
allow: [Discord.Permissions.FLAGS.VIEW_CHANNEL]
}
]
}).then(channel => {
var button = new Discord.MessageActionRow()
.addComponents(new Discord.MessageButton()
.setCustomId("close-ticket")
.setLabel("Fermet le ticket")
.setStyle("DANGER")
);
//Message du bot à l'open du ticket
channel.send({content: "<@" + interaction.user.id + "> a ouvert un ticket de la catégorie ❓ | Question", components: [button]});
//Remise à 0
interaction.update("Sélectionnez une option pour ouvrir un ticket");
});
}
这是我遇到的错误:
Uncaught TypeError TypeError: interaction.guild.roles.cache is not a function
谢谢您,祝您有美好的一天!
My goal is to make a menu selection system that opens tickets. However, when it opens a ticket the roles that should have access to the tickets (admin and moderator) are not accessible.
Could you help me?
Here is the code:
Client.on("interactionCreate", interaction => {
if(interaction.isSelectMenu()){
if(interaction.customId === "select") {
console.log(interaction.values);
if(interaction.values == "qst"){
interaction.reply({content: "Vous avez choisi l'option ❓ | Question", ephemeral: true});
nbTicket++;
//Nom du ticket
interaction.guild.channels.create("ticket-" + nbTicket, {
parent: "978962595971211324",
//Permissions
permissionOverwrites: [
{
id: interaction.guild.id,
deny: [Discord.Permissions.FLAGS.VIEW_CHANNEL]
},
{
id: interaction.user.id,
allow: [Discord.Permissions.FLAGS.VIEW_CHANNEL]
},
{
id : interaction.guild.roles.cache("978963146364563456"),
allow: [Discord.Permissions.FLAGS.VIEW_CHANNEL]
}
]
}).then(channel => {
var button = new Discord.MessageActionRow()
.addComponents(new Discord.MessageButton()
.setCustomId("close-ticket")
.setLabel("Fermet le ticket")
.setStyle("DANGER")
);
//Message du bot à l'open du ticket
channel.send({content: "<@" + interaction.user.id + "> a ouvert un ticket de la catégorie ❓ | Question", components: [button]});
//Remise à 0
interaction.update("Sélectionnez une option pour ouvrir un ticket");
});
}
This is the error I get:
Uncaught TypeError TypeError: interaction.guild.roles.cache is not a function
Thank you and have a nice day !
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不是一个函数,它是一个函数,它返回rolemanager.cache.cache>/code>
集合&lt; snowflake,cole&gt;
。您可能要寻找的可能是
Collection。得到
RoleManager.cache
isn't a function, it's a getter, that returnsCollection<Snowflake, Role>
.Probably what you are looking for is
instead of
See Collection.get