@Flummox_lnc

Почему програма аварийно закрывается при импорте функции из файла?

В файле "second.js" у меня есть некая функция, которую я пытаюсь экспортировать в файл "main.js', вот код:
//second.js  
export function commandMem(message)
{
  message.channel.send("hello");
}

//main.js
const { MessageEmbed, Client, Channel } = require('discord.js');

const client = new Client();

let text;

import {commandMem} from './second';

client.on('ready', ready => {
  console.log('ready!');
}); 

client.on("message", message => {
text = message.content;
if (text === "test")
{
    commandMem(message); 
}
});

Но редактор ничего не подчёркивая, выдаёт следующую ошибку:
Debugger attached.
(node:9408) Warning: To load an ES module, set "type": "module" in the package.json or use the .mjs extension.
(Use `node --trace-warnings ...` to show where the warning was created)
Waiting for the debugger to disconnect...
c:\Users\Михаил\Desktop\Test bot\index.js:7
import {commandMem} from './second';
^^^^^^

Я никак не могу разобраться что здесь может быть не так, даже в гугле точно такой же код даётся как рабочий, подскажите, в чём тут причина.
  • Вопрос задан
  • 57 просмотров
Решения вопроса 1
@Skaarjzzz
У вас ответ в ошибке. Нужно в package.json добавить строчку "type": "module", чтобы можно было использовать import, либо в second.js изменить export function ... на
module.exports = {
  commandMem: (message) => { message.channel.send("hello") }
};

А в main js
const { commandMem } = require('./second.js');
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы