2

我正在尝试使用telegraf创建一个电报机器人

我阅读了它的文档,我只想使用他们自己的示例开始编码

这是文档中提供的示例:

const { Telegraf } = require('telegraf')

const bot = new Telegraf(process.env.BOT_TOKEN)
bot.start((ctx) => ctx.reply('Welcome'))
bot.help((ctx) => ctx.reply('Send me a sticker'))
bot.on('sticker', (ctx) => ctx.reply(''))
bot.hears('hi', (ctx) => ctx.reply('Hey there'))
bot.launch()

// Enable graceful stop
process.once('SIGINT', () => bot.stop('SIGINT'))
process.once('SIGTERM', () => bot.stop('SIGTERM'))

当我尝试运行代码时,出现以下错误:

TypeError:Object.fromEntries 不是函数 错误截图

PS:我BOT_TOKENBotFather那里得到了我的并将它放在 .env 中

提前致谢

4

3 回答 3

3

看来您正在使用不支持 Object.fromEntries 的旧版本 node.js

只需将其更新到至少 12 个版本

于 2021-01-26T20:39:34.667 回答
2

新版本的电报存在一些问题。

我目前使用的是 3.38.0 版本,它工作得很好。

于 2021-05-02T09:28:03.527 回答
2

您使用的是哪个版本的电报?

他们最近更新了它,仍然有一些错误没有清除。删除 telegraf,安装 3.38 版本,然后再次尝试启动。如果不起作用,则说明您的配置有问题。

于 2021-01-20T17:59:22.660 回答