Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
При разработке надстройки на основе событий или отчетов о нежелательной почте могут возникнуть проблемы, такие как не загружается надстройка или событие не возникает. В следующих разделах содержатся инструкции по устранению неполадок надстройки.
Проверка предварительных требований к функциям
Убедитесь, что надстройка установлена на поддерживаемом клиенте. Некоторые клиенты поддерживают только определенные события или аспекты активации на основе событий или интегрированные отчеты о спаме. Дополнительные сведения см. в разделах Поддерживаемые события и Реализация интегрированной надстройки со сведениями о спаме.
Убедитесь, что клиент поддерживает необходимый минимальный набор требований. В наборе требований 1.14 появилась встроенная функция создания отчетов о нежелательной почте. Дополнительные сведения о номерах сборки и наборах требований для активации на основе событий см. в разделе Поддерживаемые события .
Просмотрите ожидаемое поведение и ограничения функции.
Проверка требований к манифесту и JavaScript
Убедитесь, что в манифесте надстройки выполняются следующие условия.
Убедитесь, что URL-адрес расположения исходного файла надстройки является общедоступным и не заблокирован брандмауэром. Этот URL-адрес указан в элементе SourceLocation манифеста только надстройки
"extensions.runtimes.code.page"или в свойстве унифицированного манифеста для Microsoft 365.Убедитесь, что
<Runtimes>элемент (манифест только надстройки) или"extensions.runtimes.code"свойство (унифицированный манифест) правильно ссылается на HTML-файл или файл JavaScript, содержащий обработчики событий. Классический Outlook для Windows и другие приложения Office под управлением Windows используют файл JavaScript во время выполнения, в то время как Office в Интернете, новый пользовательский интерфейс Outlook Для Mac и Новый Outlook в Windows используют HTML-файл. Пример настройки в манифесте см. в разделе "Настройка манифеста" статьи Автоматическое задание темы нового сообщения или встречи.Для клиентов Windows (за исключением нового Outlook в Windows) необходимо объединить весь код JavaScript для обработки событий в этот файл JavaScript, на который ссылается манифест. Обратите внимание, что большой пакет JavaScript может вызвать проблемы с производительностью надстройки. Рекомендуется предварительно обрабатывать тяжелые операции, чтобы они не включались в код обработки событий.
Для клиентов Windows (за исключением новых Outlook в Windows), когда функция JavaScript, указанная в манифесте для обработки события, выполняется, код в
Office.onReady()иOffice.initializeне выполняется. Мы рекомендуем добавить в обработчики событий любую логику запуска, необходимую обработчикам событий, например проверку версии клиента пользователя.Убедитесь, что файл JavaScript для обработки событий вызывает .
Office.actions.associateЭто гарантирует, что имя обработчика событий, указанное в манифесте, будет сопоставлено с его аналогом JavaScript. Ниже приведен код в качестве примера.Office.actions.associate("onNewMessageComposeHandler", onNewMessageComposeHandler);В классических версиях Outlook для Windows до версии 2403 (сборка 17425.20000) код JavaScript надстроек на основе событий и отчетов о нежелательной почте поддерживает только спецификации ECMAScript 2016 и более ранних версий. Ниже приведены некоторые примеры синтаксиса программирования, который следует избегать.
- Избегайте использования
asyncинструкций иawaitв коде. Включение их в код JavaScript приведет к истечению времени ожидания надстройки. - Избегайте использования условного (тернарного) оператора , так как это предотвратит загрузку надстройки.
Если надстройка содержит только один файл JavaScript, на который ссылается Outlook в Интернете, в Windows (новой и классической версии) и в Mac, необходимо ограничить код ECMAScript 2016, чтобы убедиться, что надстройка выполняется в более ранних версиях классического Outlook для Windows. Однако если у вас есть отдельный файл JavaScript, на который ссылается Outlook в Интернете, на Mac, на последние версии классического Outlook в Windows и новый Outlook в Windows, можно реализовать более позднюю спецификацию ECMAScript в этом файле.
- Избегайте использования
Проверка конфигурации webpack
На клиентах Windows (за исключением нового Outlook в Windows), если надстройка на основе событий использует webpack для упаковки файлов и обработчики событий никогда не запускаются, настройте сервер разработки webpack надстройки для обслуживания статических файлов. Такой подход не позволяет webpack добавлять код в файлы надстройки, которые могут быть несовместимы со средой выполнения JavaScript. Настройте надстройку для использования статических файлов следующим образом:
webpack.config.jsВ файле надстройки импортируйте модуль Node.jspath.const path = require("path");В том же файле настройте сервер разработки webpack для обслуживания статических файлов из
distпапки.... devServer: { static: { directory: path.join(__dirname, "dist"), publicPath: "/public", }, ... } ...Запустите
npm run build.В манифесте надстройки обновите путь к файлу JavaScript обработки событий, чтобы сослаться на встроенный файл, обслуживаемый из статического каталога. Например,
https://localhost:3000/public/launchevent.js.
Отладка надстройки
При внесении изменений в надстройку имейте в виду следующее:
- При обновлении манифеста удалите надстройку, а затем снова загрузите ее неопубликованное приложение. Сведения о том, как удалить неопубликованную надстройку из Outlook, см. в разделе Загрузка неопубликованных надстроек Outlook для тестирования. Если вы используете Outlook в Windows, необходимо также закрыть и повторно открыть Outlook.
- Если вы внесете изменения в файлы, отличные от манифеста, закройте и снова откройте клиент Office в Windows или mac или обновите вкладку браузера, на котором выполняется Office в Интернете.
- Если после выполнения этих действий вы по-прежнему не можете увидеть изменения, очистите кэш Office.
При тестировании надстройки в Office в Windows (за исключением нового Outlook в Windows):
Для надстроек на основе событий проверка Просмотр событий для любых сообщений об ошибках надстройки.
- В Просмотр событий выберитеПриложениежурналов> Windows.
- На панели Действия выберите Фильтровать текущий журнал.
- В раскрывающемся списке Журнал выберите нужный интервал времени журнала.
- Установите флажок Ошибка .
- В поле Идентификаторы событий введите 63.
- Нажмите кнопку ОК , чтобы применить фильтры.
Убедитесь, что файлbundle.js скачан в следующую папку в проводник. Текст, заключенный в
[], представляет применимые сведения о Office и надстройке.%LOCALAPPDATA%\Microsoft\Office\16.0\Wef\{[Office profile GUID]}\[Office account encoding]\Javascript\[Add-in ID]_[Add-in Version]_[locale]Совет
- Для удобства чтения в этой статье имя файла называется bundle.js, но точное имя зависит от приложения Office.
- Excel: bundle_excel.js
- Outlook: bundle.js.
- PowerPoint: bundle_powerpoint.js
- Word: bundle_word.js
- Нет прямого метода для определения GUID профиля Office и кодировки учетной записи, используемых в пути к файлуbundle.js . Наиболее эффективный подход к поиску файлаbundle.js надстройки — вручную проверять каждую папку, пока не будет обнаружена папка Javascript , содержащая идентификатор надстройки.
- Файл bundle.js загружается в локальную папку Wef при первой установке надстройки. Он обновляется при каждом запуске или перезапуске приложения Office. Если файлbundle.js не отображается в папке Wef , а надстройка установлена или загружена неопубликованно, перезапустите Office. Для Outlook может потребоваться удалить надстройку, а затем снова загрузить ее неопубликованное приложение.
- Для удобства чтения в этой статье имя файла называется bundle.js, но точное имя зависит от приложения Office.
При тестировании надстройки на настольных клиентах (за исключением новых Outlook в Windows) включите ведение журнала среды выполнения, чтобы выявить возможные проблемы с манифестом и установкой надстройки. Инструкции по использованию ведения журнала в среде выполнения см . в разделе Отладка надстройки с помощью ведения журнала среды выполнения.
Задайте точки останова в коде для отладки надстройки. Инструкции для конкретной платформы см . в разделе Отладка надстроек на основе событий и отчетов о спаме.
Обратитесь за дополнительной помощью
Если вам по-прежнему нужна помощь после выполнения рекомендуемых действий по устранению неполадок, откройте проблему GitHub. Включите снимки экрана, видеозаписи или журналы среды выполнения, чтобы дополнить отчет.