Class Action

Tindakan

Tindakan yang memungkinkan interaktivitas dalam elemen UI. Tindakan ini tidak terjadi secara langsung pada klien, tetapi memanggil fungsi callback Apps Script dengan parameter opsional.

Tersedia untuk Add-on Google Workspace dan aplikasi Google Chat.

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

Metode

MetodeJenis hasil yang ditampilkanDeskripsi singkat
addRequiredWidget(requiredWidget)ActionMenambahkan nama widget yang diperlukan Action ini untuk pengiriman yang valid.
setAllWidgetsAreRequired(allWidgetsAreRequired)ActionMenunjukkan apakah Action ini memerlukan input dari semua widget.
setFunctionName(functionName)ActionMenetapkan nama fungsi callback yang akan dipanggil.
setInteraction(interaction)ActionMenetapkan interaksi dengan pengguna, hanya diperlukan saat membuka dialog.
setLoadIndicator(loadIndicator)ActionMenyetel indikator pemuatan yang ditampilkan saat tindakan sedang berlangsung.
setParameters(parameters)ActionMemungkinkan parameter kustom diteruskan ke fungsi callback.
setPersistValues(persistValues)ActionMenunjukkan apakah nilai formulir ditentukan oleh nilai klien atau nilai server setelah respons tindakan mengupdate Card formulir.

Dokumentasi mendetail

addRequiredWidget(requiredWidget)

Menambahkan nama widget yang diperlukan Action ini untuk pengiriman yang valid. Jika widget dalam daftar ini tidak memiliki nilai saat Action ini dipanggil, pengiriman formulir akan dibatalkan.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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));

Parameter

NamaJenisDeskripsi
requiredWidgetStringNama widget yang diperlukan oleh Action ini.

Return

Action — Objek ini, untuk perantaian.


setAllWidgetsAreRequired(allWidgetsAreRequired)

Menunjukkan apakah Action ini memerlukan input dari semua widget.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on 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));

Parameter

NamaJenisDeskripsi
allWidgetsAreRequiredBooleanApakah tindakan memerlukan input dari semua widget. Nilai defaultnya adalah false.

Return

Action — Objek ini, untuk perantaian.


setFunctionName(functionName)

Menetapkan nama fungsi callback yang akan dipanggil. Wajib.

Parameter

NamaJenisDeskripsi
functionNameStringNama fungsi. Anda dapat menggunakan fungsi dari library yang disertakan, seperti Library.libFunction1.

Return

Action — Objek ini, untuk perantaian.


setInteraction(interaction)

Menetapkan interaksi dengan pengguna, hanya diperlukan saat membuka dialog. Jika tidak ditentukan, aplikasi akan merespons dengan mengeksekusi Action seperti membuka link atau menjalankan fungsi—seperti biasa.

Hanya tersedia untuk aplikasi Google Chat. Tidak tersedia untuk Add-on Google Workspace.

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

Parameter

NamaJenisDeskripsi
interactionInteractionInteraksi yang akan ditentukan.

Return

Action — Objek ini, untuk perantaian.


setLoadIndicator(loadIndicator)

Menyetel indikator pemuatan yang ditampilkan saat tindakan sedang berlangsung.

Parameter

NamaJenisDeskripsi
loadIndicatorLoadIndicatorIndikator yang akan ditampilkan.

Return

Action — Objek ini, untuk perantaian.


setParameters(parameters)

Memungkinkan parameter kustom diteruskan ke fungsi callback. Opsional.

Parameter

NamaJenisDeskripsi
parametersObjectKunci dan nilai harus berupa string.

Return

Action — Objek ini, untuk perantaian.


setPersistValues(persistValues)

Menunjukkan apakah nilai formulir ditentukan oleh nilai klien atau nilai server setelah respons tindakan mengupdate Card formulir. Jika ditetapkan ke true, nilai klien akan tetap ada setelah respons server. Jika ditetapkan ke false, nilai server akan menimpa nilai formulir. Defaultnya adalah false.

Mempertahankan nilai klien akan membantu mencegah situasi saat formulir berubah secara tidak terduga setelah pengguna melakukan pengeditan. Misalnya, jika pengguna melakukan pengeditan pada TextInput setelah mengirimkan formulir, tetapi sebelum server merespons. Jika nilai dipertahankan, hasil edit yang dilakukan pengguna akan tetap ada setelah respons server memperbarui Card; jika tidak, nilai formulir akan kembali ke nilai yang awalnya dikirimkan pengguna ke formulir.

Mempertahankan nilai klien dapat mengganggu kemampuan skrip Anda untuk menghapus kolom formulir atau mengganti nilai formulir. Oleh karena itu, jangan aktifkan persistensi untuk jenis fungsi tersebut. Tanpa persistensi, sebaiknya gunakan LoadIndicator.SPINNER untuk peristiwa, karena tindakan ini akan mengunci UI dan mencegah pengeditan pengguna sebelum server merespons. Atau, Anda dapat menggunakan LoadIndicator.NONE dan memastikan setiap elemen dalam formulir memiliki tindakan 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'));

Parameter

NamaJenisDeskripsi
persistValuesBooleanApakah akan mempertahankan nilai. Default-nya adalah false.

Return

Action — Objek ini, untuk perantaian.

Metode yang tidak digunakan lagi