列舉,用於識別 Apps Script 可透過觸發函式執行的授權服務類別。這些值會以觸發函式中事件參數 e 的 authMode 屬性形式公開。詳情請參閱外掛程式授權生命週期指南。
如要呼叫列舉,請呼叫其父項類別、名稱和屬性。例如
ScriptApp.AuthMode.CUSTOM_FUNCTION。
function onOpen(e) { const menu = SpreadsheetApp.getUi().createAddonMenu(); if (e && e.authMode === ScriptApp.AuthMode.NONE) { // Add a normal menu item (works in all authorization modes). menu.addItem('Start workflow', 'startWorkflow'); } else { // Add a menu item based on properties (doesn't work in AuthMode.NONE). const properties = PropertiesService.getDocumentProperties(); const workflowStarted = properties.getProperty('workflowStarted'); if (workflowStarted) { menu.addItem('Check workflow status', 'checkWorkflow'); } else { menu.addItem('Start workflow', 'startWorkflow'); } // Record analytics. UrlFetchApp.fetch('http://www.example.com/analytics?event=open'); } menu.addToUi(); }
屬性
| 屬性 | 類型 | 說明 |
|---|---|---|
NONE | Enum | 這個模式不允許存取任何需要授權的服務。當外掛程式執行 on 簡單觸發條件,且使用者已在其他文件中安裝外掛程式,但外掛程式尚未在目前文件中使用時,就會發生這種情況。 |
CUSTOM_FUNCTION | Enum | 這個模式可存取部分服務,用於自訂試算表函式。其中部分服務 (包括試算表服務的唯讀存取權) 通常需要授權,但如果是在自訂函式中使用,則不需要授權。由於自訂函式不含事件參數,因此系統絕不會傳回這個值;記錄這個值只是為了說明自訂函式會在自己的授權模式中執行。 |
LIMITED | Enum | 這個模式可存取部分服務,當附加元件或繫結至文件的指令碼執行 on 或 on 簡單觸發程序時,就會進入這個模式,但 NONE 所述情況除外。 |
FULL | Enum | 這個模式可存取所有需要授權的服務。如果外掛程式或指令碼因 LIMITED 或 NONE 所述以外的任何觸發條件而執行,就會進入這個模式。 |