Class Action

Azione

Un'azione che consente l'interattività all'interno degli elementi dell'interfaccia utente. L'azione non avviene direttamente sul ma richiama una funzione di callback di Apps Script con parametri facoltativi.

Disponibile per i componenti aggiuntivi di Google Workspace e le app Google Chat.

var image = CardService.newImage()
    .setOnClickAction(CardService.newAction()
        .setFunctionName("handleImageClick")
        .setParameters({imageSrc: 'carImage'}));

Metodi

MetodoTipo restituitoBreve descrizione
addRequiredWidget(requiredWidget)ActionAggiunge i nomi dei widget necessari all'azione per un invio valido.
setAllWidgetsAreRequired(allWidgetsAreRequired)ActionIndica se questa azione richiede input da tutti i widget.
setFunctionName(functionName)ActionImposta il nome della funzione di callback da chiamare.
setInteraction(interaction)ActionImposta l'interazione con un utente, obbligatoria solo all'apertura di una finestra di dialogo.
setLoadIndicator(loadIndicator)ActionImposta l'indicatore di caricamento che viene visualizzato mentre l'azione è in corso.
setParameters(parameters)ActionConsente di passare parametri personalizzati alla funzione callback.
setPersistValues(persistValues)ActionIndica se i valori del modulo sono determinati dai valori del client o del server Dopo che la risposta di un'azione aggiorna l'Card del modulo.

Documentazione dettagliata

addRequiredWidget(requiredWidget)

Aggiunge i nomi dei widget necessari all'azione per un invio valido. Se i widget in questo elenco non ha un valore quando questa azione viene richiamata, l'invio del modulo viene interrotto.

Disponibile solo per le app Google Chat. Non disponibile per i componenti aggiuntivi di Google Workspace.

var textInput = CardService.newTextInput()
    .setFieldName("text_input_1")
    .setTitle("Text input title")

// Creates a footer button that requires an input from the above TextInput Widget.
var action = CardService.newAction()
    .setFunctionName("notificationCallback")
    .addRequiredWidget("text_input_1");
var fixedFooter =
      CardService
          .newFixedFooter()
          .setPrimaryButton(
              CardService
                  .newTextButton()
                  .setText("help")
                  .setOnClickAction(action));

Parametri

NomeTipoDescrizione
requiredWidgetStringIl nome del widget richiesto da questa azione.

Invio

Action: oggetto per il collegamento.


setAllWidgetsAreRequired(allWidgetsAreRequired)

Indica se questa azione richiede input da tutti i widget.

Disponibile solo per le app Google Chat. Non disponibile per i componenti aggiuntivi di Google Workspace.

// Creates a button with an action that requires inputs from all widgets.
const button = CardService.newTextButton()
    .setText('Create notification')
    .setOnClickAction(
        CardService.newAction()
            .setAllWidgetsAreRequired(true));

Parametri

NomeTipoDescrizione
allWidgetsAreRequiredBooleanIndica se l'azione richiede input da tutti i widget. Il valore predefinito è false.

Invio

Action: oggetto per il collegamento.


setFunctionName(functionName)

Imposta il nome della funzione di callback da chiamare. Obbligatorio.

Parametri

NomeTipoDescrizione
functionNameStringIl nome della funzione. Puoi usare le funzioni delle librerie incluse, ad esempio Library.libFunction1.

Invio

Action: oggetto per il collegamento.


setInteraction(interaction)

Imposta l'interazione con un utente, obbligatoria solo all'apertura di una finestra di dialogo. Se non specificato, l'app risponde eseguendo un Action, ad esempio aprendo un link o eseguendo una funzione, come di consueto.

Disponibile solo per le app Google Chat. Non disponibile per i componenti aggiuntivi di Google Workspace.

const action = CardService.newAction()
    .setFunctionName('handleDialog')
    .setInteraction(CardService.Interaction.OPEN_DIALOG);

Parametri

NomeTipoDescrizione
interactionInteractionL'interazione da specificare.

Invio

Action: oggetto per il collegamento.


setLoadIndicator(loadIndicator)

Imposta l'indicatore di caricamento che viene visualizzato mentre l'azione è in corso.

Parametri

NomeTipoDescrizione
loadIndicatorLoadIndicatorL'indicatore da visualizzare.

Invio

Action: oggetto per il collegamento.


setParameters(parameters)

Consente di passare parametri personalizzati alla funzione callback. (Facoltativo)

Parametri

NomeTipoDescrizione
parametersObjectLe chiavi e i valori devono essere stringhe.

Invio

Action: oggetto per il collegamento.


setPersistValues(persistValues)

Indica se i valori del modulo sono determinati dai valori del client o del server Dopo che la risposta di un'azione aggiorna l'Card del modulo. Se impostato su true, il valore i valori del client vengono mantenuti dopo la risposta del server. Se impostato su false, lo stato del server sovrascrivono quelli del modulo. Il valore predefinito è false.

La persistenza dei valori del client aiuta a evitare situazioni in cui un modulo cambia inaspettatamente dopo che un utente ha apportato una modifica. Ad esempio, se un utente apporta una modifica a TextInput dopo inviando un modulo, ma prima che il server risponda. Se i valori sono persistenti, è necessario eseguita dall'utente rimane dopo che la risposta del server aggiorna Card; altrimenti il valore del modulo torna al valore inviato inizialmente dall'utente nel modulo.

I valori persistenti dei client possono interferire con la capacità dello script di cancellare i campi del modulo o eseguire l'override dei valori del modulo, quindi evita di attivare la persistenza per quel tipo di funzionalità. Senza persistenza, ti consigliamo di usare LoadIndicator.SPINNER per eventi, poiché in questo modo la UI viene bloccata e non è possibile apportare modifiche da parte dell'utente prima che il server risponda. In alternativa, puoi utilizzare LoadIndicator.NONE e assicurarti che ogni elemento del modulo abbia un'etichetta onChange un'azione.

// 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'));

Parametri

NomeTipoDescrizione
persistValuesBooleanIndica se mantenere i valori. Il valore predefinito è false.

Invio

Action: oggetto per il collegamento.

Metodi deprecati