Class Chip

晶片

含有圖示和文字標籤的 Chip。如有需要,可以停用晶片。

適用於 Google Chat 應用程式。Google Workspace 外掛程式的開發人員預覽版。

const chip = CardService.newChip()
                 .setLabel('Open Link')
                 .setOpenLink(CardService.newOpenLink().setUrl(
                     'https://www.google.com'));

方法

方法傳回類型簡短說明
setAltText(altText)Chip設定晶片的替代文字,方便使用者存取。
setAuthorizationAction(action)Chip設定授權動作,在點選物件時開啟授權流程的網址。
setComposeAction(action, composedEmailType)Chip設定動作,在點選物件時撰寫電子郵件草稿。
setDisabled(disabled)Chip設定是否停用晶片。
setIcon(icon)Chip設定要當做晶片的圖示。
setLabel(label)Chip設定晶片的標題。
setOnClickAction(action)Chip設定在點選物件時執行的動作。
setOnClickOpenLinkAction(action)Chip設定動作,在點選物件時於分頁中開啟網址。
setOpenLink(openLink)Chip設定點選物件時要開啟的網址。

內容詳盡的說明文件

setAltText(altText)

設定晶片的替代文字,方便使用者存取。如未設定,預設為顯示在方塊上的文字。

參數

名稱類型說明
altTextString要指派給這個晶片的替代文字。

回攻員

Chip - 這個物件,用於鏈結。


setAuthorizationAction(action)

設定授權動作,在點選物件時開啟授權流程的網址。系統隨即會在新視窗中開啟網址。使用者完成授權流程並返回應用程式後,外掛程式會重新載入。

UI 物件只能設定 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 的其中一個。

// ...

const action = CardService.newAuthorizationAction().setAuthorizationUrl('url');
CardService.newTextButton().setText('Authorize').setAuthorizationAction(action);

參數

名稱類型說明
actionAuthorizationAction這個物件會指定點選這個元素時要採取的授權動作。

回攻員

Chip - 這個物件,用於鏈結。


setComposeAction(action, composedEmailType)

設定動作,在點選物件時撰寫電子郵件草稿。UI 物件只能設定 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 的其中一個。

Action 參數必須指定回呼函式,該函式會傳回使用 ComposeActionResponseBuilder.setGmailDraft(draft) 設定的 ComposeActionResponse 物件。

// ...

const action = CardService.newAction().setFunctionName('composeEmailCallback');
CardService.newTextButton()
    .setText('Compose Email')
    .setComposeAction(action, CardService.ComposedEmailType.REPLY_AS_DRAFT);

// ...

function composeEmailCallback(e) {
  const thread = GmailApp.getThreadById(e.threadId);
  const draft = thread.createDraftReply('This is a reply');
  return CardService.newComposeActionResponseBuilder()
      .setGmailDraft(draft)
      .build();
}

參數

名稱類型說明
actionAction這個物件會指定點選這個元素時要執行的撰寫動作。
composedEmailTypeComposedEmailType列舉值,用於指定撰寫的草稿是獨立草稿還是回覆草稿。

回攻員

Chip - 這個物件,用於鏈結。


setDisabled(disabled)

設定是否要停用晶片。停用的晶片會顯示為灰色,且無法點選。

const chip = CardService.newChip().setLabel('bug Report').setDisabled(true);

參數

名稱類型說明
disabledBoolean停用狀態。

回攻員

Chip - 這個物件,用於鏈結。


setIcon(icon)

設定要當做晶片的圖示。

const chip = CardService.newChip().setIcon(
    CardService.newIconImage().setMaterialIcon(
        CardService.newMaterialIcon().setName('bug_report'),
        ),
);

參數

名稱類型說明
iconIconImage預先定義的 IconImage 值之一。

回攻員

Chip - 這個物件,用於鏈結。


setLabel(label)

設定方塊的標題。必要欄位。

const chip = CardService.newChip().setLabel('bug Report');

參數

名稱類型說明
labelString要顯示的文字。

回攻員

Chip - 這個物件,用於鏈結。


setOnClickAction(action)

設定在點選物件時執行的動作。UI 物件只能設定 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 的其中一個。

Action 參數必須指定會傳回 ActionResponse 物件的回呼函式。

// ...

const action = CardService.newAction().setFunctionName('notificationCallback');
CardService.newTextButton()
    .setText('Create notification')
    .setOnClickAction(action);

// ...

function notificationCallback() {
  return CardService.newActionResponseBuilder()
      .setNotification(
          CardService.newNotification().setText('Some info to display to user'),
          )
      .build();
}

參數

名稱類型說明
actionAction點選這個元素時要採取的動作。

回攻員

Chip - 這個物件,用於鏈結。


setOnClickOpenLinkAction(action)

設定動作,在點選物件時於分頁中開啟網址。如需建構網址,或除了建立 OpenLink 物件外還需要採取其他動作,請使用這個函式。UI 物件只能設定 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 其中一個。

Action 參數必須指定回呼函式,該函式會傳回使用 ActionResponseBuilder.setOpenLink(openLink) 設定的 ActionResponse 物件。

// ...

const action = CardService.newAction().setFunctionName('openLinkCallback');
CardService.newTextButton()
    .setText('Open Link')
    .setOnClickOpenLinkAction(action);

// ...

function openLinkCallback() {
  return CardService.newActionResponseBuilder()
      .setOpenLink(CardService.newOpenLink().setUrl('https://www.google.com'))
      .build();
}

參數

名稱類型說明
actionAction這個物件會指定點選這個元素時要執行的開啟連結動作。

回攻員

Chip - 這個物件,用於鏈結。


設定在點選物件時開啟的網址。如果網址已知且只需要開啟,請使用這項函式。UI 物件只能設定 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 其中一個。

參數

名稱類型說明
openLinkOpenLink說明要開啟網址的 OpenLink 物件。

回攻員

Chip - 這個物件,用於鏈結。