Как я могу получить группы AD с MS Graph в Reaction-TSX? - PullRequest
0 голосов
/ 08 октября 2019

Я работаю над созданием страницы в SharePoint с помощью response-tsx. Пользователь должен иметь возможность выбрать группу, которая будет сохранена в состоянии и в конечном итоге обновлена ​​с помощью @ pnp / pnpjs. Pnp также будет использоваться для получения уже существующей информации.

Изначально я хотел внедрить 'сборщик', который вы можете найти здесь: https://sharepoint.github.io/sp-dev-fx-property-controls/controls/PropertyFieldPeoplePicker/

Этот сборщик показывает все группы, которые мне нужны, нок сожалению, я не могу сохранить выбранные группы в состоянии, а также обновить информацию.

Я решил ввести MS Graph на основе этих страниц: https://docs.microsoft.com/en-us/sharepoint/dev/spfx/use-aad-tutorial
и
https://spblog.net/post/2018/12/11/SPFx-webpart-with-MS-Graph-and-PnPjs-step-by-step-guide

К сожалению, моя реализация не удалась.

Сборщик:

<PeoplePicker
 context={this.props.context}
 titleText='Effected Group(s)'
 personSelectionLimit={99}
 groupName={''}
 isRequired={true}
 selectedItems={this.getGroups}
 showHiddenInUI={false}
 defaultSelectedUsers={this.props.group}
 principalTypes={[
  PrincipalType.User,
  PrincipalType.SharePointGroup,
  PrincipalType.DistributionList,
  PrincipalType.SecurityGroup
 ]}
 ensureUser={true}
 peoplePickerWPclassName={styles.picker}
 resolveDelay={1000}
/>

Как я получаю информацию:

pnp.sp.web.lists.getByTitle("Page")
.items.getById(myId).get().then((item: any) => {
      console.log(item);
      this.setState({text: item.Text});
});

Я также попробовал это с .select и .expand

Моя попытка с MS Graph:

Я создал все файлы и выполнил следующие шаги здесь: https://docs.microsoft.com/en-us/sharepoint/dev/spfx/use-aad-tutorial

Я не создавал панель поиска и т. Д., Но я просто хотел сначала зарегистрировать группы.

this.props.context.msGraphClientFactory.getClient()
.then((client: MSGraphClient): void => {
   console.log(client);
});

После внедрения MS Graph я получаю сообщения об ошибках типа:
Не удалось загрузить компонент
Не удалось загрузить зависимость пути
Ошибка в SPLoaderError.SPError

КСТАТИ:
ThСтраница отлично работает без MS Graph и реализованных сборщиков. Это включает получение, настройку и обновление информации.

Я надеюсь, что кто-то уже работал с MS Graph или нашел другой путь без MS Graph для получения групп AD. Моя цель - получить группы AD, отобразить их в поле (например, Picker) и обновить состояние с помощью выбранных групп.

Спасибо за потраченное время.

...