Поделиться через


Устранение неполадок надстроек на основе событий и отчетов о спаме

При разработке надстройки на основе событий или отчетов о нежелательной почте могут возникнуть проблемы, такие как не загружается надстройка или событие не возникает. В следующих разделах содержатся инструкции по устранению неполадок надстройки.

Проверка предварительных требований к функциям

Проверка требований к манифесту и JavaScript

  • Убедитесь, что в манифесте надстройки выполняются следующие условия.

    • Убедитесь, что URL-адрес расположения исходного файла надстройки является общедоступным и не заблокирован брандмауэром. Этот URL-адрес указан в элементе SourceLocation XML-манифеста или свойстве "extensions.runtimes.code.page" унифицированного манифеста для Microsoft 365.

    • Убедитесь, что <элемент Runtimes> (XML-манифест) или свойство extensions.runtimes.code (унифицированный манифест) правильно ссылается на HTML-файл или файл JavaScript, содержащий обработчики событий. Классический Outlook в Windows использует файл JavaScript во время выполнения, в то время как Outlook в Интернете в новом пользовательском интерфейсе Mac, а новый Outlook в Windows (предварительная версия) — HTML-файл. Пример настройки в манифесте см. в разделе "Настройка манифеста" статьи Автоматическое задание темы нового сообщения или встречи.

      Для классического Outlook в Windows необходимо объединить весь код JavaScript для обработки событий в этот файл JavaScript, на который ссылается манифест. Обратите внимание, что большой пакет JavaScript может вызвать проблемы с производительностью надстройки. Рекомендуется предварительно обрабатывать тяжелые операции, чтобы они не включались в код обработки событий.

  • Убедитесь, что файл JavaScript для обработки событий, на который ссылается клиент Outlook в Windows, вызывает .Office.actions.associate Это гарантирует, что имя обработчика событий, указанное в манифесте, будет сопоставлено с его аналогом JavaScript.

    Совет

    Если надстройка содержит только один файл JavaScript, на который ссылается Outlook в Интернете, в Windows (классическая и новая версия (предварительная версия)) и в Mac, рекомендуется проверка, на какой платформе выполняется надстройка, чтобы определить, когда следует вызывать Office.actions.associate, как показано в следующем коде.

    if (Office.context.platform === Office.PlatformType.PC || Office.context.platform == null) {
      Office.actions.associate("onNewMessageComposeHandler", onNewMessageComposeHandler);
      Office.actions.associate("onNewAppointmentComposeHandler", onNewAppointmentComposeHandler);
    }
    
  • Код JavaScript надстроек на основе событий и отчетов о нежелательной почте, которые выполняются в Outlook для Windows, поддерживает только спецификации ECMAScript 2016 и более ранних версий. Ниже приведены некоторые примеры синтаксиса программирования, который следует избегать.

    • Избегайте использования async инструкций и await в коде. Включение их в код JavaScript приведет к истечению времени ожидания надстройки.
    • Избегайте использования условного (тернарного) оператора , так как это предотвратит загрузку надстройки.

    Если надстройка содержит только один файл JavaScript, на который ссылается Outlook в Интернете, в Windows (классическая и новая версия (предварительная версия)) и в Mac, необходимо ограничить код ECMAScript 2016, чтобы убедиться, что надстройка выполняется в Outlook в Windows. Однако если у вас есть отдельный файл JavaScript, на который ссылается Outlook в Интернете, на Mac и новый Outlook в Windows (предварительная версия), в этом файле можно реализовать более позднюю спецификацию ECMAScript.

Отладка надстройки

  • При внесении изменений в надстройку имейте в виду следующее:

    • При обновлении манифеста удалите надстройку, а затем снова загрузите ее неопубликованное приложение. Если вы используете Outlook в Windows, необходимо также закрыть и повторно открыть Outlook.
    • Если вы вносите изменения в файлы, отличные от манифеста, закройте и снова откройте клиент Outlook в Windows или mac или обновите вкладку браузера, на котором выполняется Outlook в Интернете.
    • Если после выполнения этих действий вы по-прежнему не можете увидеть изменения, очистите кэш Office.
  • При тестировании надстройки в Outlook в Windows:

    • Для надстроек на основе событий проверка Просмотр событий для любых сообщений об ошибках надстройки.

      1. В Просмотр событий выберитеПриложениежурналов> Windows.
      2. На панели Действия выберите Фильтровать текущий журнал.
      3. В раскрывающемся списке Журнал выберите нужный интервал времени журнала.
      4. Установите флажок Ошибка .
      5. В поле Идентификаторы событий введите 63.
      6. Нажмите кнопку ОК , чтобы применить фильтры.

      Пример параметров фильтра текущего журнала Просмотр событий, настроенных для отображения только ошибок Outlook с идентификатором события 63, произошедших за последний час.

    • Убедитесь, что файлbundle.js скачан в следующую папку в проводник. Замените текст, заключенный в [] , соответствующими сведениями.

      %LOCALAPPDATA%\Microsoft\Office\16.0\Wef\{[Outlook profile GUID]}\[Outlook mail account encoding]\Javascript\[Add-in ID]_[Add-in Version]_[locale]
      

      Совет

      Если файлbundle.js не отображается в папке Wef , попробуйте выполнить следующие действия:

  • При тестировании надстройки в Outlook для Windows или Mac включите ведение журнала среды выполнения, чтобы выявить возможные проблемы с манифестом и установкой надстройки. Инструкции по использованию ведения журнала в среде выполнения см . в разделе Отладка надстройки с помощью ведения журнала среды выполнения.

  • Задайте точки останова в коде для отладки надстройки. Инструкции для конкретной платформы см . в разделе Отладка надстроек на основе событий и отчетов о спаме.

Обратитесь за дополнительной помощью

Если вам по-прежнему нужна помощь после выполнения рекомендуемых действий по устранению неполадок, откройте проблему GitHub. Включите снимки экрана, видеозаписи или журналы среды выполнения, чтобы дополнить отчет.

См. также