我只想在对象中读取数据并连续打印多个按钮 我怎么能这样做?
一个类似的例子:
var obj={"coca":"2$" , "7up":"3$" , "fanta":"4$"}
for (var key in obj) {
if (obj.hasOwnProperty(key)) {
ctx.reply('price list', Extra.HTML().markup((m) =>
m.inlineKeyboard([
[m.callbackButton(`${key} : `, ` price : ${obj[key]}`)]
]))))
但问题是我不想每次都打印“价目表” 我只想在顶部打印1次,我不能在“ctx.reply”中使用for循环
答案 0 :(得分:2)
如果你只想要回复第一项,你所要做的就是在第一次回复后打破循环。
您的代码可能是这样的:
var obj={"coca":"2$" , "7up":"3$" , "fanta":"4$"}
for (var key in obj) {
if (obj.hasOwnProperty(key)) {
ctx.reply('price list', Extra.HTML().markup((m) =>
m.inlineKeyboard([
[m.callbackButton(`${key} : `, ` price : ${obj[key]}`)]
]))));
break;
}
}