Бота на TypeScript можно запустить на сервере для ботов Node.js двумя способами.
Вариант 1: запуск файла .ts напрямую
Укажите в Основной файл свой файл TypeScript, например src/index.ts, в разделе Настройки, Настройки игры. Основной файл, оканчивающийся на .ts, запускается через tsx, поэтому компилировать не нужно. Загрузите папку src, package.json и tsconfig.json. Укажите в package.json все пакеты, которые импортирует ваш код, включая typescript и пакеты типов, если они нужны коду.
Это самый простой вариант. Запуск немного медленнее, чем у скомпилированного JavaScript.
Вариант 2: сначала скомпилировать, затем запустить JavaScript
- Соберите проект на своём компьютере командой
npx tsc. - Загрузите скомпилированную папку (например,
dist) иpackage.json. - Укажите в Основной файл значение
dist/index.js.
Так бот стартует быстрее и использует чуть меньше памяти. Не забывайте пересобирать и загружать проект каждый раз, когда меняете код.
Частые проблемы
Cannot find module: вpackage.jsonнет какого-то пакета. Добавьте его туда или в поле Доп. пакеты npm (необязательно).ERR_MODULE_NOT_FOUNDс модулями ES: относительным импортам нужно расширение файла, когда задано"type": "module". В импортах TypeScript используйте./util.js(скомпилированное имя).SyntaxError: Cannot use import statement outside a module: файл используетimport, но Node считает его CommonJS. Задайте"type": "module"вpackage.jsonили скомпилируйте в CommonJS.- Отсутствующие типы при запуске не останавливают
tsx. Ошибки типов важны, только когда вы сами запускаетеtsc.
Связанные статьи: Как запустить Discord-бота на Node.js, Как сделать Discord-бота на discord.js.





