3

私や他の人がシートを JSON にエクスポートするのに役立つこのアドオン プラグインを作成しようとしています。私のテストでは、メニューが表示され、すべての機能が動作します (スクリーンショットを参照)。Google Web Store で公開するために送信したとき、「Docs Add-ons Advisor」のレビューにメニューが表示されません。「Docs Add-ons Advisor」が提案したように、「非公開」で公開して、自分の側で機能するかどうかを確認しました。そして、それは機能しません。ここに私が使用しているコードとリンクがあります。誰かが私が間違っていることを教えて、それを修正するのを手伝ってくれますか?

プラグイン (非公開): https://chrome.google.com/webstore/detail/export-to-json/fcnpcmlbpljkcehfcgllklhbgppinbdd?hl=en-US&gl=US&authuser=0

参照:

コード:

function onInstall(e) {
  onOpen(e);
}

function onOpen(e) {
  var menu = SpreadsheetApp.getUi().createAddonMenu(); // Or DocumentApp or FormApp.

  if (e && e.authMode == ScriptApp.AuthMode.NONE) {
  // Add a normal menu item (works in all authorization modes).
    menu.addItem('Export to JSON', 'exportInit');
  } else {
    // Add a menu item based on properties (doesn't work in AuthMode.NONE).
    var properties = PropertiesService.getDocumentProperties();
    var workflowStarted = properties.getProperty('workflowStarted');
    if (workflowStarted) {
      menu.addItem('Start to JSON', 'startJson');
    } else {
      menu.addItem('Export to JSON', 'exportInit');
    }
  }
  menu.addToUi();
}

function startJson(){
  ...code...
}
function exportInit() {
  ..code..
}
4

2 に答える 2

0

アドオンにも同じ問題がありました。スクリプトを実行するとメニュー項目が表示されていましたが、アドオンとして公開するとすぐにメニュー項目が不思議なことに消えました (「ヘルプ」だけが残りました)。

別のアイテムを追加したところ、何らかの理由で両方が表示されるようになりました! onOpen(e) 関数でこれを試してください。

function onOpen(e) {
SpreadsheetApp.getUi().createAddonMenu()
  .addItem('Export to JSON', 'exportInit')
  .addSeparator()
  .addItem('Test', 'exportInit')
  .addToUi();
}
于 2018-07-23T13:54:33.433 に答える