相关疑难解决方法(0)

将匿名/动态函数设置为菜单

我想在 Google Sheets 插件中为动态菜单设置动态功能。我正在使用以下代码:

function onOpen(e) {
  var menu = SpreadsheetApp.getUi().createAddonMenu();
  
  for (var i = 0; i < array.length; i++) {
        const element = array[i];
        var functionName = "_" + element.name;
        var args = element.args;
        
        this[functionName] = dynamicItem(args); //didn't work
        //this[functionName] = function () {myopen(args);} //didn't work
        //eval("function " + functionName + "() { myopen('" + args + "') }"); //didn't work
        menu.addItem(element.name, functionName);
      }
   menu.addToUi();
 }

 function dynamicItem(args) {
    return function () {
       myopen(args);
    };
 }
Run Code Online (Sandbox Code Playgroud)

当我单击菜单项时,出现以下异常:

“未找到脚本函数:函数名称 …

javascript add-on menuitem google-sheets google-apps-script

3
推荐指数
1
解决办法
1457
查看次数