Sed*_*rei 1 javascript typescript telegram-bot
为什么我有这个错误:
TypeError: node_telegram_bot_api_1.default is not a constructor
这是我的 TypeScript 代码:
import * as dotenv from 'dotenv';
dotenv.config({ path: __dirname + '/.env'})
console.log('Hello TypeScript')
import TelegramBot from 'node-telegram-bot-api';
const bot = new TelegramBot(process.env.BOT_TOKEN, {polling: true});
Run Code Online (Sandbox Code Playgroud)
这是我编译后的输出代码:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const dotenv = require("dotenv");
dotenv.config({ path: __dirname + '/.env' });
console.log('Hello TypeScript');
const node_telegram_bot_api_1 = require("node-telegram-bot-api");
const bot = new node_telegram_bot_api_1.default(process.env.BOT_TOKEN, { polling: true });
Run Code Online (Sandbox Code Playgroud)
Mil*_*dem 10
我有同样的问题,我通过更换解决了
const Telegraf = require('telegraf')
Run Code Online (Sandbox Code Playgroud)
和
const { Telegraf } = require('telegraf')
Run Code Online (Sandbox Code Playgroud)
看来导入操作不正确。的文档node-telegram-bot-api说导入需要按如下方式完成:
const TelegramBot = require('node-telegram-bot-api');
Run Code Online (Sandbox Code Playgroud)
这意味着正在导入整个模块,转换为 ES6 导入如下:
import * as TelegramBot from 'node-telegram-bot-api';
Run Code Online (Sandbox Code Playgroud)
对于导入的不同语法和语义,请参阅:https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import
| 归档时间: |
|
| 查看次数: |
9566 次 |
| 最近记录: |