我需要获取SharePoint库(案例文档)中每个单独文件的URL。目前,我正在使用:
sp.web.lists.getByTitle("Case Documents").items.get().then((items: any[]) => {
let returnedItems: IListCItem[] = items.map((item) => { return new ListCItem(item); });
this.setState({
ListCItems: returnedItems,
}, () => {
console.log(this.state.ListCItems);
});
});
// sp.web.lists.getByTitle("Case Documents").items.select("ID","Title","CaseID/Title","CaseID/ID").expand("CaseID").get().then((items: any[]) => {
// let returnedItems: IListCItem[] = items.map((item) => { return new ListCItem(item); });
// console.log(returnedItems);
// this.setState({
// ListCItems: returnedItems,
// });
// });
...以获取文件名列表。如您所见,我一直在努力使用注释掉的代码获取查找列。我将其包括在内以向您展示我的使用习惯。
有人可以告诉我如何获取每个文件的URL,这样我就可以为正在创建的Web部件中的每个文档创建可点击的链接。
我看过:https://github.com/SharePoint/PnP-JS-Core/wiki/Working-With:-Files 但是我不清楚。我猜是这样的:
pnp.sp.web.getFolderByServerRelativeUrl("/sites/dev/documents").files.getByName("file.txt").getText().then((text: string) => {});
答案 0 :(得分:2)
示例演示:
h
答案 1 :(得分:1)
您甚至可以自己编写URL。
[siteurl]/[document library name]/[file name with extension]
您可以通过以下方式获取spfx中的网站网址:
this.context.pageContext.web.absoluteUrl
您可以将其作为prop
从webpartname.ts
文件传递给组件