可點選的選單項目,會新增至資訊卡標題選單。
const action = CardService.newAction(); // Finish building the action... const cardAction = CardService.newCardAction().setText('Card action').setOnClickAction(action);
方法
| 方法 | 傳回類型 | 簡短說明 |
|---|---|---|
set | Card | 設定授權動作,在點選物件時開啟授權流程的網址。 |
set | Card | 設定動作,在點選物件時撰寫電子郵件草稿。 |
set | Card | 設定在點選物件時執行的動作。 |
set | Card | 設定動作,在點選物件時於分頁中開啟網址。 |
set | Card | 設定點選物件時要開啟的網址。 |
set | Card | 設定這項動作的選單文字。 |
內容詳盡的說明文件
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);
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
action | Authorization | 這個物件會指定點選這個元素時要採取的授權動作。 |
回攻員
CardAction - 這個物件,用於鏈結。
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(); }
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
action | Action | 這個物件會指定點選這個元素時要執行的撰寫動作。 |
composed | Composed | 列舉值,用於指定撰寫的草稿是獨立草稿還是回覆草稿。 |
回攻員
CardAction - 這個物件,用於鏈結。
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(); }
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
action | Action | 點選這個元素時要採取的動作。 |
回攻員
CardAction - 這個物件,用於鏈結。
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(); }
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
action | Action | 這個物件會指定點選這個元素時要執行的開啟連結動作。 |
回攻員
CardAction - 這個物件,用於鏈結。
setOpenLink(openLink)
設定在點選物件時開啟的網址。如果網址已知且只需要開啟,請使用這項函式。UI 物件只能設定 setOpenLink(openLink)、setOnClickAction(action)、setOnClickOpenLinkAction(action)、setAuthorizationAction(action) 或 setComposeAction(action, composedEmailType) 其中一個。
參數
| 名稱 | 類型 | 說明 |
|---|---|---|
open | Open | 說明要開啟網址的 Open 物件。 |
回攻員
CardAction - 這個物件,用於鏈結。