componente Personas en Microsoft Graph Toolkit
Puede usar el mgt-people
componente web para mostrar un grupo de personas o contactos mediante sus fotos o iniciales. De forma predeterminada, muestra los contactos más frecuentes para el usuario que ha iniciado sesión.
Este componente usa varios controles mgt-person , pero se puede enlazar a un conjunto de descriptores de personas. Si hay más personas que mostrar que el show-max
valor, se agrega un número para indicar el número de otros contactos.
Ejemplo
En el ejemplo siguiente se muestra un grupo de personas que se muestran mediante el mgt-people
componente . Puede usar el editor de código para ver cómo cambian las propiedades el comportamiento del componente.
Propiedades
De forma predeterminada, el mgt-people
componente captura eventos del punto de /me/people
conexión con el personType/class eq 'Person'
filtro para mostrar los usuarios con contacto frecuente. Puede usar varias propiedades para cambiar este comportamiento.
Atributo | Propiedad | Descripción |
---|---|---|
show-max | showMax | Indica el número máximo de personas que se van a mostrar. El valor predeterminado es 3. |
people | people | Matriz de objetos de persona de Microsoft Graph. Use esta propiedad para acceder a las personas cargadas por el componente. Establezca este valor para cargar sus propias personas en el componente. |
group-id | groupId | Identificador de un grupo de Microsoft Entra ID. Esta propiedad se usa para recuperar los miembros directos del grupo. Esta propiedad es opcional. |
user-ids | userIds | Matriz de identificadores de usuario que se van a mostrar. Esta propiedad es opcional. |
consultas de personas | peopleQueries | Consultas de Microsoft Graph para personalizar la respuesta de consulta de personas. |
person-card | personCardInteraction | Establece el comportamiento para mostrar la tarjeta de persona en una persona representada. El valor predeterminado se establece para mostrar la tarjeta de persona al mantener el mouse (PersonCardInteraction.hover). |
show-presence | showPresence | Determina si un componente de persona debe representar la notificación de presencia. El valor predeterminado es false. |
resource | resource | Dirección URL del recurso que se va a obtener de Microsoft Graph (por ejemplo, /me/people ). |
ámbitos | ámbitos | Cadena delimitada por comas con permisos que se concederán al componente. Esta propiedad es opcional. |
version | version | Versión de API que se va a usar al realizar la solicitud. El valor predeterminado es v1.0 . |
fallback-details | fallbackDetails | Matriz de objetos de persona de Microsoft Graph que representan a una persona o a varias personas cuando no se encuentra ningún usuario, persona o contacto en el gráfico. |
En el ejemplo siguiente se establece el número máximo de personas que se van a mostrar.
<mgt-people show-max="4"> </mgt-people>
Propiedades personalizadas css
El mgt-people
componente define las siguientes propiedades personalizadas CSS.
<mgt-people class="people"></mgt-people>
.people {
--people-list-margin: 12px;
--people-avatar-gap: 8px;
--people-overflow-font-color: orange;
--people-overflow-font-size: 16px;
--people-overflow-font-weight: 600;
--people-person-avatar-size: 70px;
}
Para obtener más información, consulte Componentes de estilo.
Plantillas
mgt-people
Admite varias plantillas que puede usar para reemplazar ciertas partes del componente. Para especificar una plantilla, incluya un <template>
elemento dentro de un componente y establezca en data-type
uno de los siguientes valores.
Tipo de datos | Contexto de datos | Descripción |
---|---|---|
default |
people : lista de objetos person |
La plantilla predeterminada reemplaza todo el componente por el suyo propio. |
person |
person : objeto person |
Plantilla usada para representar a cada persona. |
overflow |
people : lista de objetos personmax : número de personas mostradasextra : número de personas adicionales |
Plantilla usada para representar el número más allá del máximo a la derecha de la lista de personas. |
no-data |
No se pasa ningún contexto de datos | Plantilla que se usa cuando no hay datos disponibles. |
loading |
No se pasa ningún contexto de datos | Plantilla usada mientras el componente carga el estado. |
En los ejemplos siguientes se muestra cómo usar la person
plantilla.
<mgt-people>
<template>
<ul>
<li data-for="person in people">
<mgt-person person-query="{{ person.userPrincipalName }}"></mgt-person>
<h3>{{ person.displayName }}</h3>
<p>{{ person.jobTitle }}</p>
<p>{{ person.department }}</p>
</li>
</ul>
</template>
</mgt-people>
Permisos de Microsoft Graph
Este componente usa las siguientes API y permisos de Microsoft Graph. Para cada API llamada, el usuario debe tener al menos uno de los permisos enumerados.
Configuración | Permiso | API |
---|---|---|
configuración predeterminada | People.Read, People.Read.All | /me/people |
group-id Establecer |
GroupMember.Read.All, Group.Read.All, Directory.Read.All, GroupMember.ReadWrite.All, Group.ReadWrite.All | /groups/${groupId}/members/microsoft.graph.user |
user-ids Establecer |
User.ReadBasic.All, User.Read.All, Directory.Read.All, User.ReadWrite.All, Directory.ReadWrite.All | /users/$({userId} |
people-queries Establecer |
People.Read, People.Read.All | /me/people |
resource Establecer |
Permisos especificados en scopes |
Especificado en resource |
show-presence Establecer |
Presence.Read.All | /communications/getPresencesByUserId |
Subcomponentes
El mgt-people
componente consta de uno o varios subcomponentes que pueden requerir permisos distintos de los enumerados anteriormente. Para obtener más información, consulte la documentación de cada subcomponente: mgt-person.
Autenticación
El control usa el proveedor de autenticación global descrito en la documentación de autenticación.
Caché
Almacén de objetos | Datos almacenados en caché | Comentarios |
---|---|---|
people |
Información sobre las personas que coinciden con la consulta | Se usa cuando resource se especifica |
users |
Información sobre los usuarios que coinciden con la consulta | Se usa cuando groupId , peopleQueries userIds o no se especifica ninguna propiedad |
presence |
Presencia para el conjunto de personas especificado | Se usa cuando showPresence se establece en true |
Nota:
De forma predeterminada, el mgt-people
componente usa el mgt-person
componente para mostrar información sobre las personas. El mgt-person
componente descarga y almacena en caché automáticamente la foto para cada persona.
Para obtener más información sobre cómo configurar la memoria caché, consulte Almacenamiento en caché.
Ampliar para obtener más control
Para escenarios más complejos o una experiencia de usuario realmente personalizada, este componente expone varios protected render*
métodos para invalidar en extensiones de componente.
Método | Descripción |
---|---|
renderLoading | Representa el estado de carga. |
renderNoData | Representa el estado de datos vacío. |
renderPeople | Representa una lista de personas, hasta el show-max valor . |
renderPerson | Representa una persona individual. |
renderOverflow | Representa una representación de las personas restantes más allá del show-max valor. |
Localización
El control no expone ninguna variable de localización.