SPField.FieldRenderingControl等效于CSOM或JSOM

时间:2019-02-20 11:08:30

标签: sharepoint-2013 csom spfx sharepoint-jsom

使用Microsoft.SharePoint dll,我可以使用以下服务器端代码在自定义应用程序页面中呈现SP字段。

BaseFieldControl editControl = field.FieldRenderingControl;
editControl.ID = field.Id.ToString()                
editControl.ControlMode = SPControlMode.New;
editControl.ListId = list.ID;
editControl.FieldName = field.InternalName;

pnlFields.Controls.Add(editControl);

现在,我们正在将服务器场解决方案转换为Addins / SPFx。我无法通过CSOM / JSOM找到与上述代码等效的代码。通过客户端(Addins / SPFx)以编程方式在自定义页面中呈现SP字段的方法是什么?

这将在“批量编辑”页面中使用,其中自定义“批量编辑”页面包含在列表的默认编辑形式中可见的SP字段。并且,在“批量编辑”页面上,用户可以输入对项目的更新(就像在编辑表单上输入输入一样)。

1 个答案:

答案 0 :(得分:1)

您无法找到它,因为SPFx世界中不存在FieldRenderingControl:)

我强烈建议此示例查看如何动态呈现字段: https://github.com/SharePoint/sp-dev-fx-webparts/tree/master/samples/react-list-form

它向您展示如何读取列表架构并相应地呈现字段。您将必须自己渲染每个字段,并在更新后处理任何数据存储。在示例中,他们为大多数字段类型添加了代码。

您还可以使用Microsoft图形来批处理这些更新调用(如您提到的问题中的批处理编辑): https://docs.microsoft.com/en-us/graph/json-batching

这将为您节省大量请求,因为您每次使用此功能可以更新20个项目。