Class Action

Tindakan

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

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

const 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)ActionMenetapkan 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 memperbarui 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.

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

Parameter

NamaJenisDeskripsi
requiredWidgetStringNama widget yang diperlukan oleh Action ini.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.


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. Default-nya adalah false.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.


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.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.


setInteraction(interaction)

Menetapkan interaksi dengan pengguna, hanya diperlukan saat membuka dialog. Jika tidak ditentukan, aplikasi akan merespons dengan menjalankan 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.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.


setLoadIndicator(loadIndicator)

Menetapkan indikator pemuatan yang ditampilkan saat tindakan sedang berlangsung.

Parameter

NamaJenisDeskripsi
loadIndicatorLoadIndicatorIndikator yang akan ditampilkan.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.


setParameters(parameters)

Memungkinkan parameter kustom diteruskan ke fungsi callback. Opsional.

Parameter

NamaJenisDeskripsi
parametersObjectKunci dan nilai harus berupa string.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.


setPersistValues(persistValues)

Menunjukkan apakah nilai formulir ditentukan oleh nilai klien atau nilai server setelah respons tindakan memperbarui 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 membantu mencegah situasi saat formulir berubah secara tidak terduga setelah pengguna melakukan pengeditan. Misalnya, jika pengguna melakukan pengeditan pada TextInput setelah mengirim formulir, tetapi sebelum server merespons. Jika nilai dipertahankan, pengeditan 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, jadi hindari mengaktifkan 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.

Pulang pergi

Action — Objek ini, untuk pembuatan rantai.

Metode yang tidak digunakan lagi