我已经向画廊发布了一个带有“onFormSubmit”触发器的脚本。
当用户安装脚本时,触发器并没有安装,用户必须自己完成添加触发器的过程。我做错了什么还是故意的?
我已经向画廊发布了一个带有“onFormSubmit”触发器的脚本。
当用户安装脚本时,触发器并没有安装,用户必须自己完成添加触发器的过程。我做错了什么还是故意的?
这是正常行为,副本没有随其复制的触发器,但 GAS 提供对触发器创建的完全访问权限。
您没有提到您使用的脚本类型,但这里是一个电子表格绑定脚本的示例,它以非常用户友好的方式处理安装过程,菜单在设置触发器时更改或不提供任何安装例程用户应该能够理解。
随意适应您的用例。
function onOpen() {
var installMenu = [ {name: "Install triggers", functionName: "setTrigger"}
];
var normalMenu = [ {name: "do something", functionName: "doIt"}
];
var sheet = SpreadsheetApp.getActiveSpreadsheet();
if(!UserProperties.getProperty('triggers')){
sheet.addMenu("Custom menu",installMenu);
}else{
sheet.addMenu("Custom menu",normalMenu);
}
}
function setTrigger(){
var trig = ScriptApp.newTrigger('onFormSubmit').forSpreadsheet('0AnqSFd3iikE3dG5CQzdpV2tyMzRvdlY1RlVOUDc5RHc').onFormSubmit().create();
UserProperties.setProperty('triggers',trig.getUniqueId());
Browser.msgBox('Please refresh your Browser');
}
function onFormSubmit(){
//do something
}
function doIt(){
//
}