#javascript #node.js #typescript #import #discord.js
#javascript #node.js #typescript #импорт #discord.js
Вопрос:
Я переписываю бота Discord с JS на TS, но столкнулся с проблемой.
Запись этого не работает
import { Message } from 'discord.js';
но это делает
const { Message } = require('discord.js');
Что может быть причиной такого поведения?
Ошибка, как показано
Комментарии:
1. Можете ли вы показать свой файл tsconfig.json?
2. Вы установили discord.js посылка?
Ответ №1:
Когда вы при таргетинге es2015
или позже в разделе «модуль» в tsconfig.json, возникает ошибка, потому что —
moduleResolution
вычисляется / устанавливается какclassic
в tsconfig.json- и если
paths
не указаны для модулей в tsconfig.json
Для устранения ошибки
- установите для «модуля» в tsconfig.json значение
commonjs
- измените
moduleResolution = node
или - добавьте путь к библиотеке в
paths
разделеtsconfig.json
, см. Документацию ниже для того же.
Смотрите complete guide
, как typescript разрешает модуль как для относительных, так и для не относительных типов модулей в typescript.
Комментарии:
1. Спасибо вам, я потратил слишком много времени на такие простые вещи!