Создание первой надстройки Outlook

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

Создание надстройки

Надстройку Office можно создать с помощью генератора Yeoman для надстроек Office или Visual Studio. Генератор Yeoman создает проект Node.js, которым можно управлять с помощью Visual Studio Code или любого другого редактора, а Visual Studio создает решение Visual Studio. Выберите вкладку с нужным вариантом и следуйте инструкциям, чтобы создать надстройку и протестировать ее локально.

Необходимые компоненты

Создание проекта надстройки

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

    yo office
    

    Примечание.

    При выполнении команды yo office может появиться запрос о политиках сбора данных генератора Yeoman и средств CLI надстройки Office. Используйте предоставленные сведения, чтобы ответить на запросы подходящим образом.

    При появлении запроса предоставьте следующую информацию для создания проекта надстройки.

    • Выберите тип проекта - Office Add-in Task Pane project

    • Выберите тип сценария - JavaScript

    • Как вы хотите назвать свою надстройку? - My Office Add-in

    • Какое клиентское приложение Office должно поддерживаться? - Outlook

    Запросы и ответы для генератора Yeoman в интерфейсе командной строки.

    После завершения работы мастера генератор создаст проект и установит вспомогательные компоненты Node.

    Примечание.

    Если вы используете Node.js версии 20.0.0 или более поздней, при запуске установки генератора может появилось предупреждение о том, что у вас неподдерживаемый модуль. Мы работаем над исправлением этого. В то же время предупреждение не влияет на генератор или проект, который вы создаете, поэтому его можно игнорировать.

    Совет

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

  2. Перейдите в корневую папку проекта веб-приложения.

    cd "My Office Add-in"
    

Знакомство с проектом

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

  • Файл ./manifest.xml в корневом каталоге проекта определяет настройки и возможности надстройки.
  • Файл ./src/taskpane/taskpane.html содержит разметку HTML для области задач.
  • Файл ./src/taskpane/taskpane.css содержит код CSS, который применяется к содержимому области задач.
  • Файл ./src/taskpane/taskpane.js содержит код API JavaScript для Office, который упрощает взаимодействие между областью задачи и Outlook.

Обновление кода

  1. Откройте проект в VS Code или используемом вами редакторе кода.

    Совет

    В Windows вы можете перейти в корневой каталог проекта с помощью командной строки и ввести code ., чтобы открыть эту папку в VS Code. На компьютере Mac потребуется добавить в путь команду code перед использованием этой команды для открытия папки проекта в VS Code.

  2. Откройте файл ./src/taskpane/taskpane.html и замените весь <элемент main> (в элементе <body>) следующей разметкой. Эта новая разметка добавляет метку в том месте, где скрипт ./src/taskpane/taskpane.js запишет данные.

    <main id="app-body" class="ms-welcome__main" style="display: none;">
        <h2 class="ms-font-xl"> Discover what Office Add-ins can do for you today! </h2>
        <p><label id="item-subject"></label></p>
        <div role="button" id="run" class="ms-welcome__action ms-Button ms-Button--hero ms-font-xl">
            <span class="ms-Button-label">Run</span>
        </div>
    </main>
    
  3. В редакторе кода откройте файл ./src/taskpane/taskpane.js, а затем добавьте следующий код в функцию run . В этом коде используется API JavaScript для Office для получения ссылки на текущее сообщение и записи значения его свойства subject в область задач.

    // Get a reference to the current message
    const item = Office.context.mailbox.item;
    
    // Write message property value to the task pane
    document.getElementById("item-subject").innerHTML = "<b>Subject:</b> <br/>" + item.subject;
    

    Теперь файлtaskpane.js должен содержать следующий код.

    /*
     * Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
     * See LICENSE in the project root for license information.
     */
    
    /* global document, Office */
    
    Office.onReady((info) => {
      if (info.host === Office.HostType.Outlook) {
        document.getElementById("sideload-msg").style.display = "none";
        document.getElementById("app-body").style.display = "flex";
        document.getElementById("run").onclick = run;
      }
    });
    
    export async function run() {
      // Get a reference to the current message
      const item = Office.context.mailbox.item;
    
      // Write message property value to the task pane
      document.getElementById("item-subject").innerHTML = "<b>Subject:</b> <br/>" + item.subject;
    }
    

Проверка

Примечание.

Надстройки Office должны использовать HTTPS, а не HTTP, даже во время разработки. Если после выполнения одной из следующих команд вам будет предложено установить сертификат, примите запрос на установку сертификата, который предоставляет генератор Yeoman. Кроме того, вам может потребоваться запустить командную строку или терминал с правами администратора, чтобы внести изменения.

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

    npm start
    

    Примечание.

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

  2. В Outlook просмотрите сообщение в области чтения или откройте сообщение в отдельном окне.

  3. Выберите вкладку Главная (или сообщение , если вы открыли сообщение в новом окне), а затем нажмите кнопку Показать область задач на ленте, чтобы открыть область задач надстройки.

    Окно сообщения в Outlook с выделенной кнопкой ленты надстройки.

  4. При появлении запроса с диалоговым окном Остановка при загрузке веб-представления выберите ОК.

    Примечание.

    После нажатия кнопки Отменадиалоговое окно не будет отображаться в процессе работы с этим экземпляром надстройки. Однако при перезапуске надстройки диалоговое окно снова появится.

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

    Область задач надстройки с выделенной ссылкой Выполнить.

    Область задач надстройки, отображающая тему сообщения.

Дальнейшие действия

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

Устранение неполадок

Если сообщение об ошибке "Не удается открыть эту надстройку с localhost" появляется в области задач, выполните действия, описанные в статье по устранению неполадок.

Примеры кода

См. также