feat: request portal — bespoke forms + approval mechanism
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import { spfi, SPFI, SPFx } from '@pnp/sp';
|
||||
import '@pnp/sp/webs';
|
||||
import '@pnp/sp/lists';
|
||||
import '@pnp/sp/items';
|
||||
import '@pnp/sp/site-users/web';
|
||||
import { WebPartContext } from '@microsoft/sp-webpart-base';
|
||||
import { DATA_SITE_URL } from '../config';
|
||||
|
||||
// Единый инициализированный клиент PnPjs на весь web part.
|
||||
let _sp: SPFI | undefined;
|
||||
|
||||
/**
|
||||
* Инициализировать PnPjs контекстом web part. Вызывать один раз в onInit.
|
||||
* Клиент нацелен на сайт данных (DATA_SITE_URL), а не на текущий сайт, —
|
||||
* списки живут там, где бы ни стоял сам web part. Авторизация берётся из context.
|
||||
*/
|
||||
export function initSP(context: WebPartContext): void {
|
||||
_sp = spfi(DATA_SITE_URL).using(SPFx(context));
|
||||
}
|
||||
|
||||
/** Получить инициализированный клиент. Бросает, если initSP не был вызван. */
|
||||
export function getSP(): SPFI {
|
||||
if (!_sp) {
|
||||
throw new Error('PnPjs не инициализирован: вызовите initSP(context) в onInit web part.');
|
||||
}
|
||||
return _sp;
|
||||
}
|
||||
Reference in New Issue
Block a user