Передача сущности бота в соседний скрипт
Появилась загвоздка при формировании некой архитектуры бота.
Есть два файла:
- app.js - стартовый файл с инициализацией основных компонентов
- commands.js - файл с ответами на запросы пользователя
app.js
const TelegramAPI = require('node-telegram-bot-api');
...
const bot = new TelegramAPI(token, {polling: true});
...
console.log(bot);
...
module.exports = {
bot
}
commands.js
const { bot } = require("./app.js")
function answer()
{
console.log(bot);
return bot.sendMessage(...);
}
Проблема как раз в передаче сущности бота во второй скрипт. В первом случае лог показывает всю информацию о боте и все работает как надо. Во втором же файле, при попытке вывести информацию о боте, выбивает undefined. При попытке отправить сообщение error: [polling_error] {}.
Вопрос в том, как можно (возможно ли) передать сущность bot в другой файл и использовать ее?
Ответы (1 шт):
Автор решения: ksa
→ Ссылка
Пробуй вот такой вариант...
const TelegramAPI = require('node-telegram-bot-api');
...
const bot = new TelegramAPI(token, {polling: true});
...
console.log(bot);
...
const getBot = _ => bot
...
module.exports = {
getBot
}
Ну и
const { getBot } = require("./app.js")
function answer()
{
const bot = getBot()
console.log(bot);
return bot.sendMessage(...);
}