Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Предостережение
Набор средств Microsoft Graph не рекомендуется использовать. Период выхода на пенсию начинается 1 сентября 2025 года, а полный выход на пенсию запланирован на 28 августа 2026 года. Разработчикам следует перейти на использование пакетов SDK для Microsoft Graph или других поддерживаемых средств Microsoft Graph для создания веб-интерфейсов. Дополнительные сведения см. в объявлении об устаревании.
Компонент можно использовать mgt-teams-channel-picker для включения поиска каналов Microsoft Teams, связанных с пользователем. Этот компонент может выполнять поиск всех команд, к которым присоединился пользователь, и каждого канала в этих командах.
Пример
В примере ниже показан компонент mgt-teams-channel-picker. Начните поиск канала или команды, чтобы увидеть отображение результатов.
Получение выбранного канала
Используйте свойство selectedItem, чтобы получить канал и родительскую команду, выбранные в настоящее время. Это значение будет равно null, если канал не выбран.
selectedItem содержит два свойства: channel (MicrosoftGraph.Channel) и team (MicrosoftGraph.Team).
const channelPicker = document.querySelector("mgt-teams-channel-picker");
console.log(channelPicker.selectedItem.channel);
console.log(channelPicker.selectedItem.team);
Выбор канала
Используйте метод selectChannelById(channelId: string) для программного выбора канала.
Примечание. Средство выбора канала Teams поддерживает выбор только одного канала.
const channelPicker = document.querySelector("mgt-teams-channel-picker");
const channelId = "some-channel-id";
channelPicker.selectChannelById(channelId);
Примечание. Указанный канал (и соответствующий идентификатор) должен относиться к команде, к которой присоединился прошедший проверку пользователь.
Настраиваемые свойства CSS
Компонент mgt-teams-channel-picker определяет следующие настраиваемые свойства CSS.
<mgt-teams-channel-picker
class="teams-channel-picker"
person-query="me"
></mgt-teams-channel-picker>
.teams-channel-picker {
--channel-picker-input-border: 2px rgba(255, 255, 255, 0.5) solid; /* sets all input area border */
--channel-picker-input-background-color: #1f1f1f; /* input area background color */
--channel-picker-input-background-color-hover: #008394; /* input area border hover color */
--channel-picker-input-background-color-focus: #0f78d4; /* input area border focus color */
--channel-picker-dropdown-background-color: brown; /* channel background color */
--channel-picker-dropdown-item-text-color: #fff;
--channel-picker-dropdown-item-background-color-hover: #333d47; /* channel or team hover background */
--channel-picker-dropdown-item-text-color-selected: #0f78d4; /* selected channel background color */
--channel-picker-color: white; /* input area border focus color */
--channel-picker-arrow-fill: #ffffff;
--channel-picker-input-placeholder-text-color: #f1f1f1; /* placeholder text color */
--channel-picker-input-placeholder-text-color-hover: rgba(
255,
255,
255,
0.8
); /* place holder text focus color */
--channel-picker-input-placeholder-text-color-focus: rgba(
255,
255,
255,
0.8
); /* place holder text focus color */
--channel-picker-search-icon-color: yellow;
--channel-picker-close-icon-color: yellow;
--channel-picker-down-chevron-color: yellow;
--channel-picker-up-chevron-color: yellow;
}
Дополнительные сведения см. в статье Компоненты стиля.
События
| Событие | Когда он генерируется | Пользовательские данные | Отменяемым | Пузыри | Работает с пользовательским шаблоном |
|---|---|---|---|---|---|
selectionChanged |
Возникает, когда пользователь вносит изменения в выбор канала | Текущий выбранный элемент в качестве { channel: командыканала, team: } |
Нет | Нет | Да |
Дополнительные сведения об обработке событий см. в разделе События.
Шаблоны
Компонент mgt-teams-channel-picker поддерживает несколько шаблонов, позволяющих заменить его определенные части. Чтобы указать шаблон, включите <template> элемент внутри компонента и задайте для data-type параметра одно из следующих значений.
| Тип данных | Контекст данных | Описание |
|---|---|---|
| загрузка | null: нет данных | Шаблон, используемый для отображения состояния средства выбора при выполнении запроса к Microsoft Graph, выполняется. |
| error | null: нет данных | Шаблон, используемый, если поиск пользователя не возвращает пользователей. |
В следующем примере показано, как использовать шаблон error.
<mgt-teams-channel-picker>
<template data-type="error">
<p>Sorry, no Teams or Channels were found</p>
</template>
</mgt-teams-channel-picker>
Разрешения Microsoft Graph
Этот компонент по умолчанию использует следующие API-интерфейсы Microsoft Graph и разрешения. Для каждого вызываемого API пользователь должен иметь по крайней мере одно из перечисленных разрешений.
| Конфигурация | Разрешение | API |
|---|---|---|
| default | Team.ReadBasic.All, TeamSettings.Read.All, TeamSettings.ReadWrite.All, User.Read.All, User.ReadWrite.All | /me/joinedTeams |
| default | Team.ReadBasic.All TeamSettings.Read.All, TeamSettings.ReadWrite.All | /teams/${teamId}/photo/$value |
| default | Channel.ReadBasic.All, ChannelSettings.Read.All, ChannelSettings.ReadWrite.All | /teams/${id}/channels |
Проверка подлинности
В элементе управления используется глобальный поставщик проверки подлинности, описанный в документации по проверке подлинности.
Кэш
Компонент mgt-teams-channel-picker не кэшировать данные.
Расширение для дополнительного управления
В более сложных сценариях или настраиваемых пользовательских интерфейсах этот компонент предоставляет несколько методов protected render* для переопределения в расширениях компонента.
| Метод | Описание |
|---|---|
| renderSelected | Отображает выбранную команду и канал в поле ввода. |
| renderInput | Отображает поле ввода. |
| renderDropdown | Отображает раскрывающийся список. |
| renderDropdownList | Рекурсивно отображает элементы в раскрывающемся списке. |
| renderItem | Отображает команду или канал в раскрывающемся списке. |
| renderHighlightedText | Отображает текст канала, выделяя входной запрос. |
| renderLoading | Отображает состояние загрузки раскрывающегося списка. |
| renderError | Отображает состояние ошибки раскрывающегося списка. |
Локализация
Элемент управления предоставляет следующие переменные, которые можно локализовать. Дополнительные сведения о настройке локализации см. в разделе Локализация компонентов.
| Имя строки | Значение по умолчанию |
|---|---|
| closeButtonAriaLabel | remove the selected channel |
| inputPlaceholderText | Select a channel |
| loadingMessage | Loading... |
| noResultsFound | We didn't find any matches. |
| photoFor | Teams photo for |
| teamsChannels | Teams and channels results |