Handle underTheMessage keyboard button click by Alert or Toast
Handle underTheMessage keyboard button click by Alert or Toast
Handling click on underTheMessage keyboard button
If you want to handle when user clicks on underTheMessage keyboard button, you can use @OnClick
decorator for method and pass button id to it.
You can also send alert or toast using class-method: Alert and Toast
Alert/Toast class-method takes arguments:
Argument
Description
Required
1
Text of the Alert/Toast
Required
import { Controller, Keyboard, KeyboardTypes, MessageSend, OnCommand, OnClick, Alert, Toast } from 'nestgram';
import { AppService } from './app.service';
@Controller()
export class AppController {
constructor(private readonly appService?: AppService) {}
@OnCommand('start')
async start(): Promise<MessageSend> {
return new MessageSend(
'underTheMessage (or inline_keyboard) keyboard example',
new Keyboard(KeyboardTypes.underTheMessage) // keyboard type
.btn('Button', 'buttonId')
.btn('Button 2', 'buttonId2'), // row is created automatically
);
}
@OnClick('buttonId')
async buttonClick(): Promise<Alert> {
return new Alert('Hello!');
}
@OnClick('buttonId2')
async secondButtonClick(): Promise<Toast> {
return new Toast('World!');
}
}
You can also use a RegExp expression in the @OnClick
decorator to handle clicks with params
Last updated