
[英]SyntaxError: Cannot use import statement outside a module discord.js
[英]Discord.js SyntaxError: Cannot use import statement outside a module
我正在尝试将第二个文件中的常量导入到第一个文件中,以便嵌入可以使用这些导入来发送消息
档案一:
module.exports = {
data: {
name: "GT1",
},
async execute(interaction, client, message) {
//const {a1, a2, a3} = require('./src/components/modals/GeneralTicket');
import {a1, a2, a3} from './src/components/modals/GeneralTicket.js'
// const a1 = interaction.fields.getTextInputValue("a1");
// const a2 = interaction.fields.getTextInputValue("a2");
// const a3 = interaction.fields.getTextInputValue("a3");
const embed = new EmbedBuilder()
.setColor(0x0099ff)
.setTitle("ClixMC General Support Ticket ")
.setTimestamp()
.addFields(
{ name: "IGN:", value: `${a1}` },
{ name: "What is your Ticket related to:", value: `${a2}` },
{ name: "Brief summary:", value: `${a3}` }
);
createdChannel.send({
embeds: [embed],
ephemeral: true,
});
},
};
档案二:
module.exports = {
data: {
name: `GeneralTicket`
},
async execute(interaction, client, message) {
client.on('interactionCreate', (modalSubmit) => {
if (!modalSubmit.isModalSubmit()) return;
const a1 = interaction.fields.getTextInputValue('a1');
const a2 = interaction.fields.getTextInputValue('a2');
const a3 = interaction.fields.getTextInputValue('a3');
const embed = new EmbedBuilder()
.setColor(0x0099FF)
.setTitle('ClixMC General Support Ticket ')
.setTimestamp()
.addFields(
{ name: 'IGN:', value: `${a1}` },
{ name: 'What is your Ticket related to:', value: `${a2}`},
{ name: 'Brief summary:', value: `${a3}`});
const row = new ActionRowBuilder()
.addComponents(
new ButtonBuilder()
.setCustomId('GT1')
.setLabel(`Submit`)
.setStyle(ButtonStyle.Success)
.setDisabled(false),
);
modalSubmit.reply({ embeds: [embed] , ephemeral: true, components: [row], content: "To submit your ticket click `Submit` to cancel click `Dismiss Message`." });
});
},
};
我的导入错误:SyntaxError: Cannot use import statement outside a module
我已经尝试了这两种方法,但仍然无法正常工作
import {a1, a2, a3} from './src/components/modals/GeneralTicket.js'
const { a1, a2, a3 } = require("./src/components/modals/GeneralTicket");
这不是导入在 Javascript 中的工作方式。您正在做的是从尚未调用的 function 导入变量。 导入需要在文件的顶部,并且const x = require('x')
语法是正确的。 你不能按照你现在的方式做你想做的事,但我相信还有另一种方法。 不幸的是,不知道您想要什么和更多代码,我无能为力。
问题未解决?试试以下方法:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.