Как я могу проверить, входит ли текущий пользователь в группу sharepoint с PnP JS? - PullRequest
0 голосов
/ 06 мая 2020

Мне нужно отображать контент на основе группы, к которой принадлежит текущий пользователь, но я не могу понять, как это сделать в response / pnp js.

Я написал функцию ниже, но она возвращает false даже если имя группы, возвращенное в console.log (grp ["Title"]), верное.

private _checkUserInGroup(strGroup)
  {

    let InGroup:boolean = false;

    let grp = sp.web.currentUser.groups.get().then((r: any) => {      
      r.forEach((grp: SiteGroups) =>{
        if (grp["Title"] == strGroup)
        {
           InGroup = true; 
        }
        console.log(grp["Title"]);
      });
    });

    return InGroup;
  }

Ответы [ 2 ]

0 голосов
/ 06 мая 2020

Мне удалось выполнить эту работу, поместив async / await в функцию ... она возвращала false перед вызовом sp.web .... Большое спасибо за помощь.

0 голосов
/ 06 мая 2020

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

Пошаговый

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

На каком этапе вы боретесь?

https://pnp.github.io/pnpjs/sp/site-users/

import { sp } from "@pnp/sp";
import "@pnp/sp/webs";
import "@pnp/sp/site-users/web";

let groups = await sp.web.currentUser.groups();

Ура

Truez

...