Class Chip

Chip

一个带有图标和文本标签的 Chip。您可以根据需要停用 chip。

适用于 Google Chat 应用。在 Google Workspace 插件的开发者预览版中提供。

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

方法

方法返回值类型简介
setAltText(altText)Chip设置 chip 的替代文本,以确保无障碍阅读。
setAuthorizationAction(action)Chip设置授权操作,以便在点击对象时打开授权流程的网址。
setComposeAction(action, composedEmailType)Chip设置在点击对象时撰写电子邮件草稿的操作。
setDisabled(disabled)Chip设置是否停用 chip。
setIcon(icon)Chip设置要用作 chip 的图标。
setLabel(label)Chip设置 chip 的标题。
setOnClickAction(action)Chip设置在点击对象时执行的操作。
setOnClickOpenLinkAction(action)Chip设置在点击对象时在标签页中打开网址的操作。
setOpenLink(openLink)Chip设置在点击对象时打开的网址。

详细文档

setAltText(altText)

设置 chip 的替代文本,以确保无障碍阅读。如果未设置,则默认为条状标签上显示的文本。

参数

名称类型说明
altTextString要为此 chip 分配的替代文本。

返回

Chip - 此对象,用于链式调用。


setAuthorizationAction(action)

设置授权操作,以便在点击对象时打开授权流程的网址。这会在新窗口中打开网址。当用户完成授权流程并返回到应用时,插件会重新加载。

界面对象只能设置 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)

设置在点击对象时撰写电子邮件草稿的操作。界面对象只能设置 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)

设置是否停用 chip。已停用的 chip 会显示为灰色,且无法点击。

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

参数

名称类型说明
disabledBoolean停用状态。

返回

Chip - 此对象,用于链式调用。


setIcon(icon)

设置要用作 chip 的图标。

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

参数

名称类型说明
iconIconImage预定义 IconImage 值之一。

返回

Chip - 此对象,用于链式调用。


setLabel(label)

设置 chip 的标题。必需。

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

参数

名称类型说明
labelString要显示的文本。

返回

Chip - 此对象,用于链式调用。


setOnClickAction(action)

设置在点击对象时执行的操作。界面对象只能设置 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 对象之外还需要执行其他操作时,请使用此函数。界面对象只能设置 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 - 此对象,用于链式调用。


设置在点击对象时打开的网址。当网址已知且只需打开时,请使用此函数。界面对象只能设置 setOpenLink(openLink)setOnClickAction(action)setOnClickOpenLinkAction(action)setAuthorizationAction(action)setComposeAction(action, composedEmailType) 中的一个。

参数

名称类型说明
openLinkOpenLink用于描述要打开的网址的 OpenLink 对象。

返回

Chip - 此对象,用于链式调用。