Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O SDK do JavaScript apresenta uma base Action e um conjunto de classes de ação dedicadas (que todas se estendem de Action) que mapeiam para os vários tipos de ação definidos no esquema de Cartão Adaptável: | Nome do tipo de esquema | Classe JavaScript | | --- | --- | | Action.OpenUrl | OpenUrlAction | | Action.ShowCard | ShowCardAction | | Action.ToggleVisibility | ToggleVisibilityAction | | Action.Submit | SubmitAction |
Manipulação de ações quando os usuários clicam em botões de ação
Para lidar com a execução de ação com o SDK do JavaScript, um aplicativo deve fornecer um manipulador para o evento global AdaptiveCard.onExecuteAction ou para o evento por cartão adaptiveCardInstance.onExecuteAction . O manipulador de eventos será invocado independentemente do tipo de ação que está sendo executada e é responsabilidade do aplicativo testar qual tipo de ação está sendo executada e executar o código apropriado. Normalmente, os aplicativos só precisarão lidar SubmitActionexplicitamente, pois outros tipos de ação são tratados automaticamente pelo SDK.
Exemplo
// Create an AdaptiveCard instance
let adaptiveCard = new AdaptiveCard();
// Parse a card payload - this is just a very simple example
adaptiveCard.parse(
{
"type": "AdaptiveCard",
"version": "1.0",
"actions": [
{
"type": "Action.Submit",
"id": "clickMe",
"title": "Click me!"
}
]
}
)
// Provide an onExecuteAction handler to handle the Action.Submit
adaptiveCard.onExecuteAction = (action: Action) => {
if (action instanceof SubmitAction) {
// If you copy this code sample, remove the alert statement
// and provide your own custom handling code
alert("You clicked " + action.title);
}
}
document.body.appendChild(adaptiveCard.render());
Executando ações no código
O SDK do JavaScript permite executar ações no código, se necessário, por meio do Action.execute() método.
Exemplo
function triggerAction(card: AdaptiveCard, actionId: string) {
let action = card.getActionById(actionId);
if (action !== undefined) {
// Executing an action in code will trigger the
// onExecuteAction event
action.execute();
}
}