SharePoint列表附件获取和添加

时间:2017-06-29 09:01:04

标签: javascript jquery sharepoint scope

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);

0 个答案:

没有答案