office-ui-fabric-reactライブラリを使用して構築されたSharePoint用のカスタム編集フォームを作成します。私は最近、私の編集フォームに人のピッカーを追加し、ルックアップの列が正常な "get" REST呼び出しに戻らないことに気付きました。あなたが選択して各ピッカーを展開する必要があるようです。人物ピッカーを使用したカスタム編集フォーム
私が以前に設定したgetリクエストは、リスト名と現在のアイテムIDを自動的に呼び出すことで、できるだけ再利用できるようになっています。現時点では、難しいことをやっているような気がして、React SharePointの編集フォームで人のピッカー列を使った経験がある人がいれば見たいと思っていました。
現在、列の値を設定するワークフローは次のとおりです。現在のすべての列のget要求の
- 編集フォームcomponentDidMountキックは
- ロードされた値は以下のようにthis.state.loadedValuesを下に送信している状態の編集フォーム上の子コンポーネント
- に設定されている値子コンポーネント内の小道具値
- は、値が私はモミしなければならない、
それは現在、私は私の現在の値を使用してコンポーネントに反応移入したい場合のように思えるがthis.props.valueするように設定されていますstは私の通常の "get" RESTコールを通常の列に対して行い、その後別のREST呼び出しを行い、選択して各自のピッカーを展開して自分のフォームに追加します。これを行うより良い方法はありますか?
は、ここで私が持っている一般的なGETリクエストです:
let req = new XMLHttpRequest;
return new Promise((resolve, reject) => {
req.open('GET', `${_spPageContextInfo.webAbsoluteUrl}/_api/Web/Lists/GetByTitle('${LIST_NAME}')/Items(${ITEM_ID})`, true);
req.setRequestHeader('Content-Type', 'application/json;odata=verbose');
req.setRequestHeader('Accept', 'application/json;odata=verbose');
req.onload = async() => {
// alert(req.status);
if (req.status === 200) {
let response = JSON.parse(req.response);
resolve(response.d);
} else {
reject(Error(req.statusText));
}
};
req.onerror =() => {
console.log(`Error: ${req.status}`);
reject(Error('Network Error'));
};
req.send(null);
});