首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何测试OnOpen()菜单填充在应用程序脚本页上添加?

如何测试OnOpen()菜单填充在应用程序脚本页上添加?
EN

Stack Overflow用户
提问于 2022-05-12 17:02:28
回答 1查看 68关注 0票数 0

几个月来,我一直在尝试,但没有成功,提交我的Google工作表添加到Google市场上。在最后一次试验中,我收到了这样的信息:

应用程序不符合以下发布评审标准:安装应用程序后没有显示菜单菜单选项。请确保外接程序正确地使用onInstall()和onOpen()填充其菜单。菜单项是在首次安装外接程序和打开其他文件时填充的。请参见编辑器附加授权.

我的问题是:如何自己模拟安装,以检测导致问题的是什么函数或变量?

我已经试图避免声明全局变量,尝试了数以百万计的不同方式填充菜单,但似乎没有任何效果。Google脚本的文档太通用了,GWM的人没有显示错误发生在哪里。我真的不知道我能做什么。

我怎样才能避免我无法复制的情况呢?如果我只是访问我自己添加到GWM页面来测试它。有时我会问自己,谷歌是否有兴趣让第三方加入。很难得到信息。

任何帮助都将受到欢迎。

这是我现在的初始化例程:

代码语言:javascript
运行
复制
var ui = function(){
  return SpreadsheetApp.getUi()}

/**
 * @OnlyCurrentDoc
 * ver: https://developers.google.com/apps-script/guides/services/authorization
 */

// The onOpen function is executed automatically every time a Spreadsheet is loaded
function onOpen(e) {
  ui().createAddonMenu()
    .addItem('Importar fontes', 'ExtrairComentarios')
    .addSeparator()
    .addItem('Relação de fatores', 'doFactors')
    .addItem('Análise simples', 'doTable')
    .addItem('Georreferenciamento', 'doMap')
    .addSeparator()
    .addItem('Gera matriz multimodal', 'GeraMatrizMM')
    .addItem('Análise multimodal', 'doMultimodal')
    .addItem('Gráfico multimodal', 'doGet')
    .addItem('Gráfico multifatorial', 'doMultifatorial')
    .addSeparator()
    .addItem('Tutorial', 'openTutorial')
    .addSeparator()
    .addItem('Versão atual', 'DoVersaoAtual')
    .addItem('Start!', 'DoStart')
    .addToUi();

    // Script external request
    //eval(UrlFetchApp.fetch("https://cdnjs.cloudflare.com/ajax/libs/alasql/0.6.2/alasql.min.js").getContentText())

}

/**
 * The event handler triggered when installing the add-on.
 * @param {Event} e The onInstall event.
 */
function onInstall(e) {
  onOpen(e);
}

相信我,我已经花了几个月的时间来解决这个问题。

EN

回答 1

Stack Overflow用户

发布于 2022-05-12 17:49:53

Google 最近发布是一种测试编辑器插件和更新文档的方法.请参阅https://developers.google.com/apps-script/add-ons/how-tos/testing-editor-addons

现在可以为编辑器附加组件创建一个测试部署。请查看上一个链接的详细信息。

如果您有Google帐户,另一种选择可能是仅为测试目的发布外接程序以供内部使用。一旦开始工作,您可能会制作一个副本来公开发布,并且只为测试未来的更改保留内部用途。

为了防止出现问题,只使用简单的onOpen触发器显示自定义菜单。如果您希望外接程序在打开时执行其他操作,则使用可安装触发器执行此操作,这意味着为最终用户添加一种创建此触发器的方法,即在自定义菜单中为该触发器添加一个选项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72219570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档