Node JS как достать функцию из другого файла js

255
18 ноября 2017, 12:57

Пишу код на Node JS и столкнулся с проблемой.

Мне нужно достать функцию из другого JS файла. Я делал с помощью require, но не получилось.

Вот код:

filename.js

module.exports = function Hello () {
   console.info('Привет, итс ми');
}

И в importer.js

const filename = require('./app.js')
else if (message == "/hello") {
    filename.Hello();
    client.chatMessage(steamID, "Дал ответ!");
    console.log("Отправил hello");
}

Я не так контачу? Или есть другой способ?

Answer 1

исправте код модуля

module.exports.Hello = function Hello (){}

В подключаемом файле должно быть указано, что экспортируется. Для этого в конце файла делается запись: module.exports.name = nameObjectExports Пример: код модуля с названием abracadabra.js

    function moduleTest(arg){
    console.log(arg);
}
function moduleTest_2(arg){
    console.log(arg);
}
module.exports.moduleTest = moduleTest;
// после `module.exports` можно указать другое имя, по которому будет 
//вызываться желаемая функция
module.exports.qwerty = moduleTest_2;

Код основного файла:

var randomName = require("./abracadabra.js");
randomName.moduleTest("test");
randomName.qwerty("test_2");

Также проверьте правильность пути, к подключаемому модулю

READ ALSO
setInterval toggleClass jQuery, что-то пошло не так

setInterval toggleClass jQuery, что-то пошло не так

Наверное из-за такой структуры не могу понять, почему неправильно работает, класс добавляется произвольно и не на 1 сек, как будто сходит с умаПодскажите,...

318
Как выводить записи в JSON по убыванию?

Как выводить записи в JSON по убыванию?

Нужно чтобы записи прилетали по убыванию(скрин 1) Те

198
PHP генератор случайных чисел

PHP генератор случайных чисел

Вопрос по поводу линейного конгруэнтного алгоритмаЕсли известно около 40-50 чисел подряд выданными генератором с m=16

300
Плавная подгрузка содержимого на ajax

Плавная подгрузка содержимого на ajax

На серверной части идет парсинг всего инвентаря пользователя из steamПосле чего его нужно вывести на страницу по 30 предметов с пагинацией

206