Class Action

عمل

اقدامی که تعامل را در عناصر رابط کاربری فعال می کند. این عمل مستقیماً روی کلاینت انجام نمی‌شود، بلکه یک تابع فراخوانی Apps Script را با پارامترهای اختیاری فراخوانی می‌کند.

برای افزونه‌های Google Workspace و برنامه‌های Google Chat موجود است.

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

مواد و روش ها

روش نوع برگشت توضیح مختصر
addRequiredWidget(requiredWidget) Action نام ویجت‌هایی را که این Action برای ارسال معتبر به آن نیاز دارد، اضافه می‌کند.
setAllWidgetsAreRequired(allWidgetsAreRequired) Action نشان می دهد که آیا این اقدام به ورودی از همه ویجت ها نیاز دارد یا خیر.
setFunctionName(functionName) Action نام تابع برگشت به فراخوانی را تنظیم می کند.
setInteraction(interaction) Action تعامل با یک کاربر را تنظیم می کند، فقط هنگام باز کردن یک گفتگو لازم است.
setLoadIndicator(loadIndicator) Action نشانگر بارگیری را تنظیم می کند که در حین انجام عمل نمایش داده شود.
setParameters(parameters) Action اجازه می دهد تا پارامترهای سفارشی به عملکرد برگشت به تماس منتقل شوند.
setPersistValues(persistValues) Action نشان می دهد که آیا مقادیر فرم توسط مقادیر مشتری یا سرور پس از به روز رسانی Card فرم توسط یک پاسخ اقدام تعیین می شود.

مستندات دقیق

addRequiredWidget(requiredWidget)

نام ویجت‌هایی را که این Action برای ارسال معتبر به آن نیاز دارد، اضافه می‌کند. اگر هنگام فراخوانی این Action، ابزارک‌های موجود در این فهرست، مقداری نداشته باشند، ارسال فرم لغو می‌شود.

فقط برای برنامه‌های گپ Google در دسترس است. برای افزونه‌های 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));

مولفه های

نام تایپ کنید شرح
requiredWidget String نام ویجت مورد نیاز این عمل.

برگشت

Action - این شی، برای زنجیر کردن.


setAllWidgetsAreRequired(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));

مولفه های

نام تایپ کنید شرح
allWidgetsAreRequired Boolean اینکه آیا این اقدام به ورودی از همه ویجت ها نیاز دارد یا خیر. پیش فرض ها به false .

برگشت

Action - این شی، برای زنجیر کردن.


setFunctionName(functionName)

نام تابع برگشت به فراخوانی را تنظیم می کند. ضروری.

مولفه های

نام تایپ کنید شرح
functionName String نام تابع. می توانید از توابع کتابخانه های موجود مانند Library.libFunction1 استفاده کنید.

برگشت

Action - این شی، برای زنجیر کردن.


setInteraction(interaction)

تعامل با یک کاربر را تنظیم می کند، فقط هنگام باز کردن یک گفتگو لازم است. اگر مشخص نشده باشد، برنامه با اجرای یک Action مانند باز کردن یک پیوند یا اجرای یک تابع - به طور معمول پاسخ می دهد.

فقط برای برنامه‌های گپ Google در دسترس است. برای افزونه‌های Google Workspace در دسترس نیست.

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

مولفه های

نام تایپ کنید شرح
interaction Interaction تعامل برای مشخص کردن.

برگشت

Action - این شی، برای زنجیر کردن.


setLoadIndicator(loadIndicator)

نشانگر بارگیری را تنظیم می کند که در حین انجام عمل نمایش داده شود.

مولفه های

نام تایپ کنید شرح
loadIndicator LoadIndicator نشانگر برای نمایش

برگشت

Action - این شی، برای زنجیر کردن.


setParameters(parameters)

اجازه می دهد تا پارامترهای سفارشی به عملکرد برگشت به تماس منتقل شوند. اختیاری.

مولفه های

نام تایپ کنید شرح
parameters Object هم کلیدها و هم مقادیر باید رشته ای باشند.

برگشت

Action - این شی، برای زنجیر کردن.


setPersistValues(persistValues)

نشان می دهد که آیا مقادیر فرم توسط مقادیر مشتری یا سرور پس از به روز رسانی Card فرم توسط یک پاسخ اقدام تعیین می شود. وقتی روی true تنظیم شود، مقادیر مشتری پس از پاسخ سرور باقی می مانند. وقتی روی false تنظیم می شود، مقادیر سرور مقادیر فرم را بازنویسی می کند. پیش فرض ها به false .

تداوم مقادیر مشتری به جلوگیری از شرایطی که یک فرم پس از انجام ویرایش توسط کاربر به طور غیرمنتظره تغییر می کند، کمک می کند. به عنوان مثال، اگر کاربر پس از ارسال فرم، اما قبل از پاسخ دادن سرور، یک TextInput را ویرایش کند. اگر مقادیر باقی بمانند، ویرایشی که کاربر انجام داده است، پس از به‌روزرسانی پاسخ سرور، Card باقی می‌ماند. در غیر این صورت مقدار فرم به مقداری که کاربر در ابتدا به فرم ارسال کرده است برمی گردد.

ثابت ماندن مقادیر مشتری می تواند در توانایی اسکریپت شما برای پاک کردن فیلدهای فرم یا نادیده گرفتن مقادیر فرم تداخل ایجاد کند، بنابراین از روشن کردن ماندگاری برای آن نوع عملکرد خودداری کنید. بدون تداوم، توصیه می شود از LoadIndicator.SPINNER برای رویدادها استفاده کنید، زیرا این کار رابط کاربری را قفل می کند و از ویرایش های کاربر قبل از پاسخگویی سرور جلوگیری می کند. از طرف دیگر، می‌توانید از 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'));

مولفه های

نام تایپ کنید شرح
persistValues Boolean اینکه آیا ارزش ها را حفظ کنیم. پیش فرض ها به false .

برگشت

Action - این شی، برای زنجیر کردن.

روش های منسوخ شده