Obteniendo usuarios anidados del sitio en SPFX
Necesito averiguar si el usuario actual es propietario de un sitio en spfx react. Por favor, encuentra a continuación el código que estoy usando actualmente:
const ownerGroupId = (await sp.web.associatedOwnerGroup()).Id;
const users = await sp.web.siteGroups.getById(ownerGroupId).users();
await sp.web.currentUser.get().then(async(user) => {
if(users.some(r => r.Id==user.Id)) {
console.log("Propietario del sitio");
}
});
Pero el problema al que me enfrento es que los grupos de propietarios del sitio tienen grupos a los que el usuario actual pertenece. Necesito comparar los usuarios que están anidados dentro de los grupos de propietarios del sitio. Cualquier ayuda será muy apreciada.
davy.ai
Para comparar los usuarios que están anidados dentro de los grupos de propietarios del sitio, puedes utilizar una función recursiva para verificar todos los grupos anidados en el grupo de propietarios:
Este código verificará todos los grupos anidados en el grupo de propietarios para encontrar cualquier usuario que coincida con el usuario actual. Si encuentra una coincidencia, devuelve
true
, indicando que el usuario actual es propietario del sitio. De lo contrario, devuelvefalse
.