JS新手在这里,但我试图慢慢地解决它:)
一直在努力解决这个问题,希望有人可以提供指导。
我要做的是使用pnp-js-core库从SharePoint列表项中获取附件。
一旦我有附件数据(名称和blob),我将把它们添加到另一个列表项。
我正在关注此处提供的示例。 https://github.com/SharePoint/PnP-JS-Core/wiki/Working-With:-Attachments
虽然我能够获得大部分方法,但我仍然无法正确使用范围变量,或者可能是代码本身的结构。
指导非常感谢!
var ItemID = GetUrlKeyValue("ID");
var sourcelist = $pnp.sp.web.lists.getByTitle("List A");
var sourceitem = sourcelist.items.getById(ItemID);
var destlist = $pnp.sp.web.lists.getByTitle("List B");
var fileInfos = [];
var filename = "";
// get current item attachments
sourceitem.attachmentFiles.get().then(v => {
for (var k in v) {
console.log(k + " - " + v[k].FileName);
filename = v[k].FileName;
// get currect item attachments blobs
sourceitem.attachmentFiles.getByName(filename).getBlob().then(b => {
blob = b;
console.log(b);
});
fileInfos.push({
name: filename,
content: blob
});
}
// adds attachments
destlist.items.getById(2).attachmentFiles.addMultiple(fileInfos).then(r => {
console.log(r);
});
});
console.log(fileInfos);