Một thao tác cho phép tương tác trong các thành phần trên giao diện người dùng. Thao tác này không diễn ra trực tiếp trên ứng dụng mà thay vào đó sẽ gọi một hàm gọi lại trong Apps Script với các tham số không bắt buộc.
Có sẵn cho các ứng dụng Tiện ích bổ sung của Google Workspace và Google Chat.
const image = CardService.newImage().setOnClickAction( CardService.newAction().setFunctionName('handleImageClick').setParameters({ imageSrc: 'carImage' }), );
Phương thức
Phương thức | Loại dữ liệu trả về | Mô tả ngắn |
---|---|---|
add | Action | Thêm tên của các tiện ích mà Hành động này cần để gửi một cách hợp lệ. |
set | Action | Cho biết liệu Hành động này có yêu cầu dữ liệu đầu vào từ tất cả các tiện ích hay không. |
set | Action | Đặt tên cho hàm callback cần gọi. |
set | Action | Đặt hoạt động tương tác với người dùng, chỉ bắt buộc khi mở hộp thoại. |
set | Action | Đặt chỉ báo tải hiển thị trong khi thao tác đang diễn ra. |
set | Action | Cho phép truyền các tham số tuỳ chỉnh đến hàm callback. |
set | Action | Cho biết liệu giá trị của biểu mẫu được xác định bởi giá trị của ứng dụng khách hay giá trị của máy chủ sau khi phản hồi hành động cập nhật Card của biểu mẫu. |
Tài liệu chi tiết
add Required Widget(requiredWidget)
Thêm tên của các tiện ích mà Hành động này cần để gửi một cách hợp lệ. Nếu các tiện ích trong danh sách này không có giá trị khi Hành động này được gọi, thì quá trình gửi biểu mẫu sẽ bị huỷ.
Chỉ dành cho ứng dụng Google Chat. Không dùng được cho các tiện ích bổ sung của 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), );
Tham số
Tên | Loại | Mô tả |
---|---|---|
required | String | Tên của tiện ích mà Hành động này yêu cầu. |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.
set All Widgets Are Required(allWidgetsAreRequired)
Cho biết liệu Hành động này có yêu cầu dữ liệu đầu vào từ tất cả các tiện ích hay không.
Chỉ dành cho ứng dụng Google Chat. Không dùng được cho các tiện ích bổ sung của 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));
Tham số
Tên | Loại | Mô tả |
---|---|---|
all | Boolean | Liệu thao tác có yêu cầu dữ liệu đầu vào từ tất cả các tiện ích hay không. Giá trị mặc định là false . |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.
set Function Name(functionName)
Đặt tên cho hàm callback cần gọi. Bắt buộc.
Tham số
Tên | Loại | Mô tả |
---|---|---|
function | String | Tên hàm. Bạn có thể sử dụng các hàm từ các thư viện đi kèm, chẳng hạn như Library.libFunction1 . |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.
set Interaction(interaction)
Đặt hoạt động tương tác với người dùng, chỉ bắt buộc khi mở hộp thoại. Nếu không được chỉ định, ứng dụng sẽ phản hồi bằng cách thực thi Action
như mở một đường liên kết hoặc chạy một hàm như bình thường.
Chỉ dành cho ứng dụng Google Chat. Không dùng được cho các tiện ích bổ sung của Google Workspace.
const action = CardService.newAction() .setFunctionName('handleDialog') .setInteraction(CardService.Interaction.OPEN_DIALOG);
Tham số
Tên | Loại | Mô tả |
---|---|---|
interaction | Interaction | Lượt tương tác cần chỉ định. |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.
set Load Indicator(loadIndicator)
Đặt chỉ báo tải hiển thị trong khi thao tác đang diễn ra.
Tham số
Tên | Loại | Mô tả |
---|---|---|
load | Load | Chỉ báo cần hiển thị. |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.
set Parameters(parameters)
Cho phép truyền các tham số tuỳ chỉnh đến hàm callback. Không bắt buộc.
Tham số
Tên | Loại | Mô tả |
---|---|---|
parameters | Object | Cả khoá và giá trị đều phải là chuỗi. |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.
set Persist Values(persistValues)
Cho biết liệu giá trị của biểu mẫu được xác định bởi giá trị của ứng dụng khách hay giá trị của máy chủ sau khi phản hồi hành động cập nhật Card
của biểu mẫu. Khi được đặt thành true
, các giá trị của ứng dụng sẽ tồn tại sau khi máy chủ phản hồi. Khi được đặt thành false
, giá trị của máy chủ sẽ ghi đè giá trị của biểu mẫu. Giá trị mặc định là false
.
Việc duy trì các giá trị của ứng dụng giúp ngăn chặn các trường hợp một biểu mẫu thay đổi ngoài dự kiến sau khi người dùng chỉnh sửa. Ví dụ: nếu người dùng chỉnh sửa Text
sau khi gửi biểu mẫu, nhưng trước khi máy chủ phản hồi. Nếu các giá trị được duy trì, nội dung chỉnh sửa mà người dùng thực hiện sẽ vẫn còn sau khi phản hồi của máy chủ cập nhật Card
; nếu không, giá trị biểu mẫu sẽ quay lại giá trị mà người dùng ban đầu gửi vào biểu mẫu.
Việc lưu trữ giá trị của ứng dụng có thể ảnh hưởng đến khả năng của tập lệnh trong việc xoá các trường biểu mẫu hoặc ghi đè giá trị biểu mẫu, vì vậy, hãy tránh bật tính năng lưu trữ cho loại chức năng đó. Nếu không có tính chất ổn định, bạn nên sử dụng Load
cho các sự kiện, vì điều này sẽ khoá giao diện người dùng và ngăn người dùng chỉnh sửa trước khi máy chủ phản hồi. Ngoài ra, bạn có thể sử dụng Load
và đảm bảo mọi phần tử trong biểu mẫu đều có thao tác 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'), );
Tham số
Tên | Loại | Mô tả |
---|---|---|
persist | Boolean | Liệu có duy trì các giá trị hay không. Giá trị mặc định là false . |
Cầu thủ trả bóng
Action
– Đối tượng này, để tạo chuỗi.