我在 SPFx webpart 中使用 PnPJS,其中我有一种方法可以为多个列表中的特定项目设置自定义项目级别权限。我的代码如下:
let listIds: string[] = [
"LISTGUID1",
"LISTGUID2"
];
for (const listId of listIds) {
const listItems: Item[] = await sp.web.lists
.getById(listId)
.items
.filter(`LookupFieldId eq ${lfId}`)
.get();
if (Validate.ArrayWithElements(listItems)) {
for (const item of listItems) {
await item.breakRoleInheritance(false);
await item.roleAssignments.add(userId, roleDefId);
}
}
}
我在以下行出现错误:
await item.breakRoleInheritance(false, false);
错误信息如下:
Uncaught (in promise) TypeError: item.breakRoleInheritance is not a function
当我将结果显式转换为 type 时,它也不起作用Item
。类Item
扩展SharePointQueryableShareableItem
和SharePointQueryableShareableItem
扩展SharePointQueryableSecurable
。该方法在后者中定义。