我在文档中附加了一个容器绑定的脚本。
它具有onOpen
可安装的触发器,我需要在新创建的文档中获取脚本。
我发现最有效的方法是通过从原始文档进行复制来创建新文档。
The problem is, that the triggers are not copied with it.
我想以编程方式创建它-测试环境有问题。我收到一个错误:
该附件尝试了Test中不允许作为附件的操作 模式。要使用此操作,必须部署附件。
据我了解,我需要将项目发布到商店才能使用,而我不想这样做。
我不介意以附件的形式发布,但google脚本IDE仅提供以Web Docs网络附件的形式发布。
代码:
function onOpen(e){
DocumentApp.getUi() // Or DocumentApp, SlidesApp, or FormApp.
.createMenu('Custom menu')
.addItem('Open sidebar automatically', 'createTrigger')
.addToUi();
}
function createTrigger() {
var doc = DocumentApp.getActiveDocument();
ScriptApp.newTrigger('onOpenReal')
.forDocument(doc)
.onOpen()
.create();
}
function onOpenReal(e){
...something requiring authorization...
}
答案 0 :(得分:1)
我部分地找到了答案:
我认为不可能将文档及其触发器复制到一起,但是我没有找到任何与此相关的正式文档。
但是错误:
该附件尝试了Test中不允许作为附件的操作 模式。要使用此操作,必须部署附件。
在看似正常的环境中是由Google Apps脚本编辑器中保存的测试配置引起的。
要摆脱此错误,您需要首先删除“作为附件测试”选项中的所有测试配置。在此之前,即使以普通用户身份打开,系统也将所有启动视为“测试”。