اقدامی که تعامل را در عناصر رابط کاربری فعال می کند. این عمل مستقیماً روی کلاینت انجام نمیشود، بلکه یک تابع فراخوانی Apps Script را با پارامترهای اختیاری فراخوانی میکند.
برای افزونههای Google Workspace و برنامههای Google Chat موجود است.
const image = CardService.newImage().setOnClickAction( CardService.newAction().setFunctionName('handleImageClick').setParameters({ imageSrc: 'carImage' }), );
روش ها
روش | نوع برگشت | شرح مختصر |
---|---|---|
add Required Widget(requiredWidget) | Action | نام ویجتهایی را که این Action برای ارسال معتبر به آن نیاز دارد، اضافه میکند. |
set All Widgets Are Required(allWidgetsAreRequired) | Action | نشان می دهد که آیا این اقدام به ورودی از همه ویجت ها نیاز دارد یا خیر. |
set Function Name(functionName) | Action | نام تابع برگشت به فراخوانی را تنظیم می کند. |
set Interaction(interaction) | Action | تعامل با یک کاربر را تنظیم می کند، فقط هنگام باز کردن یک گفتگو لازم است. |
set Load Indicator(loadIndicator) | Action | نشانگر بارگیری را تنظیم می کند که در حین انجام عمل نمایش داده شود. |
set Parameters(parameters) | Action | اجازه می دهد تا پارامترهای سفارشی به عملکرد برگشت به تماس منتقل شوند. |
set Persist Values(persistValues) | Action | نشان می دهد که آیا مقادیر فرم توسط مقادیر مشتری یا سرور پس از به روز رسانی Card فرم توسط یک پاسخ اقدام تعیین می شود. |
مستندات دقیق
add Required Widget(requiredWidget)
نام ویجتهایی را که این Action برای ارسال معتبر به آن نیاز دارد، اضافه میکند. اگر هنگام فراخوانی این Action، ابزارکهای موجود در این فهرست، مقداری نداشته باشند، ارسال فرم لغو میشود.
فقط برای برنامههای گپ Google در دسترس است. برای افزونههای 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), );
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
required Widget | String | نام ویجت مورد نیاز این عمل. |
بازگشت
Action
- این شی، برای زنجیر کردن.
set All Widgets Are Required(allWidgetsAreRequired)
نشان می دهد که آیا این اقدام به ورودی از همه ویجت ها نیاز دارد یا خیر.
فقط برای برنامههای گپ Google در دسترس است. برای افزونههای 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));
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
all Widgets Are Required | Boolean | اینکه آیا این اقدام به ورودی از همه ویجت ها نیاز دارد یا خیر. پیش فرض ها به false . |
بازگشت
Action
- این شی، برای زنجیر کردن.
set Function Name(functionName)
نام تابع برگشت به فراخوانی را تنظیم می کند. مورد نیاز.
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
function Name | String | نام تابع. می توانید از توابع کتابخانه های موجود مانند Library.libFunction1 استفاده کنید. |
بازگشت
Action
- این شی، برای زنجیر کردن.
set Interaction(interaction)
تعامل با یک کاربر را تنظیم می کند، فقط هنگام باز کردن یک گفتگو لازم است. اگر مشخص نشده باشد، برنامه با اجرای یک Action
مانند باز کردن یک پیوند یا اجرای یک تابع - به طور معمول پاسخ می دهد.
فقط برای برنامههای گپ Google در دسترس است. برای افزونههای Google Workspace در دسترس نیست.
const action = CardService.newAction() .setFunctionName('handleDialog') .setInteraction(CardService.Interaction.OPEN_DIALOG);
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
interaction | Interaction | تعامل برای مشخص کردن. |
بازگشت
Action
- این شی، برای زنجیر کردن.
set Load Indicator(loadIndicator)
نشانگر بارگیری را تنظیم می کند که در حین انجام عمل نمایش داده شود.
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
load Indicator | Load Indicator | نشانگر برای نمایش |
بازگشت
Action
- این شی، برای زنجیر کردن.
set Parameters(parameters)
اجازه می دهد تا پارامترهای سفارشی به عملکرد برگشت به تماس منتقل شوند. اختیاری.
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
parameters | Object | هم کلیدها و هم مقادیر باید رشته ای باشند. |
بازگشت
Action
- این شی، برای زنجیر کردن.
set Persist Values(persistValues)
نشان می دهد که آیا مقادیر فرم توسط مقادیر مشتری یا سرور پس از به روز رسانی Card
فرم توسط یک پاسخ اقدام تعیین می شود. وقتی روی true
تنظیم شود، مقادیر مشتری پس از پاسخ سرور باقی می مانند. وقتی روی false
تنظیم می شود، مقادیر سرور مقادیر فرم را بازنویسی می کند. پیش فرض ها به false
.
تداوم مقادیر مشتری به جلوگیری از شرایطی که یک فرم پس از انجام ویرایش توسط کاربر به طور غیرمنتظره تغییر می کند، کمک می کند. به عنوان مثال، اگر کاربر پس از ارسال فرم، اما قبل از پاسخ دادن سرور، ویرایشی را در Text Input
انجام دهد. اگر مقادیر باقی بمانند، ویرایشی که کاربر انجام داده است، پس از بهروزرسانی پاسخ سرور، Card
باقی میماند. در غیر این صورت مقدار فرم به مقداری که کاربر در ابتدا به فرم ارسال کرده است برمی گردد.
ثابت ماندن مقادیر مشتری می تواند در توانایی اسکریپت شما برای پاک کردن فیلدهای فرم یا نادیده گرفتن مقادیر فرم تداخل ایجاد کند، بنابراین از روشن کردن ماندگاری برای آن نوع عملکرد خودداری کنید. بدون تداوم، توصیه می شود از Load Indicator.SPINNER
برای رویدادها استفاده کنید، زیرا این کار رابط کاربری را قفل می کند و از ویرایش های کاربر قبل از پاسخگویی سرور جلوگیری می کند. از طرف دیگر، میتوانید از Load Indicator.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'), );
پارامترها
نام | تایپ کنید | توضیحات |
---|---|---|
persist Values | Boolean | اینکه آیا ارزش ها را حفظ کنیم. پیش فرض ها به false . |
بازگشت
Action
- این شی، برای زنجیر کردن.