Class Action

アクション

UI 要素内でのインタラクションを可能にするアクション。このアクションはクライアントで直接行われず、オプションのパラメータを使用して Apps Script のコールバック関数が呼び出されます。

Google Workspace アドオンと Google Chat アプリで利用できます。

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

メソッド

メソッド戻り値の型概要
addRequiredWidget(requiredWidget)Action有効な送信に必要なウィジェットの名前を追加します。
setAllWidgetsAreRequired(allWidgetsAreRequired)Actionこのアクションにすべてのウィジェットからの入力が必要かどうかを示します。
setFunctionName(functionName)Action呼び出されるコールバック関数の名前を設定します。
setInteraction(interaction)Actionユーザーとのインタラクションを設定します。ダイアログを開く場合にのみ必要です。
setLoadIndicator(loadIndicator)Actionアクションの進行中に表示される読み込みインジケーターを設定します。
setParameters(parameters)Actionカスタム パラメータをコールバック関数に渡すことができます。
setPersistValues(persistValues)Actionアクション レスポンスでフォームの Card が更新された後、フォームの値がクライアントの値とサーバーの値のどちらによって決定されるかを指定します。

詳細なドキュメント

addRequiredWidget(requiredWidget)

有効な送信に必要なウィジェットの名前を追加します。このアクションが呼び出されたときに、このリスト内のウィジェットに値がない場合、フォームの送信は中止されます。

Google Chat アプリでのみ使用できます。Google Workspace アドオンには使用できません。

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),
);

パラメータ

名前説明
requiredWidgetStringこのアクションに必要なウィジェットの名前。

戻る

Action - チェーン用のこのオブジェクト。


setAllWidgetsAreRequired(allWidgetsAreRequired)

このアクションにすべてのウィジェットからの入力が必要かどうかを示します。

Google Chat アプリでのみ使用できます。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));

パラメータ

名前説明
allWidgetsAreRequiredBooleanアクションにすべてのウィジェットからの入力が必要なかどうか。デフォルトでは false に設定されます。

戻る

Action - チェーン用のこのオブジェクト。


setFunctionName(functionName)

呼び出されるコールバック関数の名前を設定します。必須。

パラメータ

名前説明
functionNameString関数名。Library.libFunction1 などの、含まれているライブラリの関数を使用できます。

戻る

Action - チェーン用のこのオブジェクト。


setInteraction(interaction)

ユーザーとのインタラクションを設定します。ダイアログを開く場合にのみ必要です。指定しない場合、アプリは通常どおり、リンクを開く、関数を実行するなどの Action を実行して応答します。

Google Chat アプリでのみ使用できます。Google Workspace アドオンには使用できません。

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

パラメータ

名前説明
interactionInteraction指定するインタラクション。

戻る

Action - チェーン用のこのオブジェクト。


setLoadIndicator(loadIndicator)

アクションの進行中に表示される読み込みインジケーターを設定します。

パラメータ

名前説明
loadIndicatorLoadIndicator表示するインジケーター。

戻る

Action - チェーン用のこのオブジェクト。


setParameters(parameters)

カスタム パラメータをコールバック関数に渡すことができます。省略可。

パラメータ

名前説明
parametersObjectキーと値の両方が文字列である必要があります。

戻る

Action - チェーン用のこのオブジェクト。


setPersistValues(persistValues)

アクション レスポンスでフォームの Card が更新された後、フォームの値がクライアントの値とサーバーの値のどちらによって決定されるかを指定します。true に設定すると、クライアントの値はサーバー レスポンス後に保持されます。false に設定すると、サーバーの値がフォームの値を上書きします。デフォルトは false です。

クライアント値を保持すると、ユーザーが編集した後にフォームが予期せず変更される状況を防ぐことができます。たとえば、ユーザーがフォームの送信後に、サーバーが応答する前に TextInput を編集した場合です。値が保持されている場合、サーバー レスポンスが Card を更新した後も、ユーザーが行った編集は保持されます。それ以外の場合、フォーム値はユーザーがフォームに最初に送信した値に戻ります。

クライアント値を保持すると、スクリプトがフォーム フィールドを消去したり、フォーム値をオーバーライドしたりする機能が妨げられる可能性があるため、このような機能では保持を有効にしないでください。永続性がない場合は、イベントに LoadIndicator.SPINNER を使用することをおすすめします。これにより、UI がロックされ、サーバーが応答する前にユーザーによる編集が防止されます。または、LoadIndicator.NONE を使用して、フォーム内のすべての要素に 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'),
        );

パラメータ

名前説明
persistValuesBoolean値を保持するかどうか。デフォルトは false です。

戻る

Action - チェーン用のこのオブジェクト。

サポート終了のメソッド