Action qui permet l'interactivité dans les éléments d'interface utilisateur. L'action ne se produit pas directement sur le client, mais appelle plutôt une fonction de rappel Apps Script avec des paramètres facultatifs.
Disponible pour les modules complémentaires Google Workspace et les applications Google Chat.
const image = CardService.newImage().setOnClickAction( CardService.newAction().setFunctionName('handleImageClick').setParameters({ imageSrc: 'carImage' }), );
Méthodes
| Méthode | Type renvoyé | Brève description |
|---|---|---|
add | Action | Ajoute les noms des widgets dont cette action a besoin pour être envoyée. |
set | Action | Indique si cette action nécessite des entrées de tous les widgets. |
set | Action | Définit le nom de la fonction de rappel à appeler. |
set | Action | Définit l'interaction avec un utilisateur. Cette option n'est requise que lors de l'ouverture d'une boîte de dialogue. |
set | Action | Définit l'indicateur de chargement qui s'affiche pendant l'exécution de l'action. |
set | Action | Permet de transmettre des paramètres personnalisés à la fonction de rappel. |
set | Action | Indique si les valeurs du formulaire sont déterminées par les valeurs du client ou du serveur après qu'une réponse d'action a mis à jour la Card du formulaire. |
Documentation détaillée
addRequiredWidget(requiredWidget)
Ajoute les noms des widgets dont cette action a besoin pour être envoyée. Si les widgets de cette liste n'ont pas de valeur lorsque cette action est appelée, l'envoi du formulaire est annulé.
Disponible pour les modules complémentaires Google Workspace et les applications Google Chat.
const textInput = CardService.newTextInput() .setFieldName('text_input_1') .setTitle('Text input title'); // Creates a footer button that requires an input from the above TextInput // Widget. const action = CardService.newAction() .setFunctionName('notificationCallback') .addRequiredWidget('text_input_1'); const fixedFooter = CardService.newFixedFooter().setPrimaryButton( CardService.newTextButton().setText('help').setOnClickAction(action), );
Paramètres
| Nom | Type | Description |
|---|---|---|
required | String | Nom du widget requis par cette action. |
Renvois
Action : cet objet, pour l'association en chaîne.
setAllWidgetsAreRequired(allWidgetsAreRequired)
Indique si cette action nécessite des entrées de tous les widgets.
Disponible pour les modules complémentaires Google Workspace et les applications Google Chat.
// Creates a button with an action that requires inputs from all widgets. const button = CardService.newTextButton() .setText('Create notification') .setOnClickAction( CardService.newAction().setAllWidgetsAreRequired(true));
Paramètres
| Nom | Type | Description |
|---|---|---|
all | Boolean | Indique si l'action nécessite des entrées de tous les widgets. La valeur par défaut est
false. |
Renvois
Action : cet objet, pour l'association en chaîne.
setFunctionName(functionName)
Définit le nom de la fonction de rappel à appeler. Obligatoire.
Paramètres
| Nom | Type | Description |
|---|---|---|
function | String | Nom de la fonction. Vous pouvez utiliser des fonctions à partir de bibliothèques incluses,
telles que Library.libFunction1. |
Renvois
Action : cet objet, pour l'association en chaîne.
setInteraction(interaction)
Définit l'interaction avec un utilisateur. Cette option n'est requise que lors de l'ouverture d'une boîte de dialogue. Si elle n'est pas spécifiée, l'application répond en exécutant une Action comme l'ouverture d'un lien ou l'exécution d'une fonction, comme d'habitude.
Disponible uniquement pour les applications Google Chat. Non disponible pour les modules complémentaires Google Workspace.
const action = CardService.newAction() .setFunctionName('handleDialog') .setInteraction(CardService.Interaction.OPEN_DIALOG);
Paramètres
| Nom | Type | Description |
|---|---|---|
interaction | Interaction | Interaction à spécifier. |
Renvois
Action : cet objet, pour l'association en chaîne.
setLoadIndicator(loadIndicator)
Définit l'indicateur de chargement qui s'affiche pendant l'exécution de l'action.
Paramètres
| Nom | Type | Description |
|---|---|---|
load | Load | Indicateur à afficher. |
Renvois
Action : cet objet, pour l'association en chaîne.
setParameters(parameters)
Permet de transmettre des paramètres personnalisés à la fonction de rappel. Facultatif.
Paramètres
| Nom | Type | Description |
|---|---|---|
parameters | Object | Les clés et les valeurs doivent être des chaînes. |
Renvois
Action : cet objet, pour l'association en chaîne.
setPersistValues(persistValues)
Indique si les valeurs du formulaire sont déterminées par les valeurs du client ou du serveur après qu'une réponse d'action a mis à jour la Card du formulaire. Lorsque ce paramètre est défini sur true, les valeurs du client sont conservées après la réponse du serveur. Lorsque ce paramètre est défini sur false, les valeurs du serveur écrasent les valeurs du formulaire. La valeur par défaut est false.
La conservation des valeurs du client permet d'éviter que le formulaire ne change de manière inattendue après qu'un utilisateur l'a modifié. Par exemple, si un utilisateur modifie un TextInput après avoir envoyé un formulaire, mais avant que le serveur ne réponde. Si les valeurs sont conservées, la modification apportée par l'utilisateur reste en place après que la réponse du serveur a mis à jour la Card. Sinon, la valeur du formulaire revient à celle que l'utilisateur a initialement envoyée au formulaire.
La conservation des valeurs du client peut interférer avec la capacité de votre script à effacer les champs de formulaire ou à remplacer les valeurs du formulaire. Évitez donc d'activer la conservation pour ce type de fonctionnalité. Sans conservation, il est recommandé d'utiliser LoadIndicator.SPINNER pour les événements, car cela verrouille l'interface utilisateur et empêche les modifications de l'utilisateur avant que le serveur ne réponde. Vous pouvez également utiliser LoadIndicator.NONE et vous assurer que chaque élément du formulaire comporte une action onChange.
// Creates a button with an action that persists the client's values as the // on-click action. const button = CardService.newTextButton() .setText('Create notification') .setOnClickAction( CardService.newAction().setPersistValues(true).setFunctionName( 'functionName'), );
Paramètres
| Nom | Type | Description |
|---|---|---|
persist | Boolean | Indique si les valeurs doivent être conservées. La valeur par défaut est false. |
Renvois
Action : cet objet, pour l'association en chaîne.