我將繼續創建兩個腳本: 核心功能將作爲Web應用程序部署,並且簡單的容器綁定腳本將提供調用Web應用程序的接口。
由於應用沒有被綁定到一個文檔網頁可能要遵循這樣的方法:當你部署應用程序,你會得到一個鏈接,讓您訪問的功能
function doGet(e){
if(e.parameter.docId){
doStuff(DocumentApp.openById(e.parameter.docId));
}
}
現在。
從您可以添加一些UI(例如,在側板的錨元素)鏈接到Web應用程序使用適當的參數
ScriptApp.getService().getUrl() + "?docId=" + DocumentApp.getActiveDocument().getId()
或使用UrlFetchApp得到的結果容器綁定腳本並在UI中顯示它們。
不幸的是,這與在所有文檔中自動添加功能不同,而是在每個要添加功能的文檔中僅安裝相對輕量級的鉤子,而不是完整的腳本。 我不知道有任何方法可以實現這一點。請注意,製作文檔副本時,副本將包含其所有腳本,以便爲需要附加功能的文檔創建模板。儘管如果你想混合和匹配多個腳本,這可能會變得更加棘手。
我的方法的優點是,如果您修改了核心功能,則所有文檔都可立即使用該更改,無需更新其腳本。另一方面,如果容器腳本需要與UI進行大量交互,它可能會變得複雜並降低將其分離爲兩個腳本的實用性。
當然可以! 我想要創建一個應用程序來檢索一個單詞(或多個),然後通過XHR(UrlFetchApp)將該單詞發送到服務器,在那裏檢查拼寫錯誤/單詞預測,然後作爲JSON對象返回 - 這部分已經被照顧了。 我想要做的事情是讓腳本將自己綁定到用戶正在查看的任何文檔,並且在Google文檔中具有相同的功能。 任何想法? – user2663983