在SPFx App中使用pnpjs核心添加多列

时间:2018-01-23 09:27:11

标签: sharepoint spfx

我正在使用pnp js创建一个供我的sharepoint应用程序使用的列表。我尝试使用sharepoint框架架构来配置它,但我确实遇到了问题,并为它引发了一个问题(https://github.com/SharePoint/sp-dev-docs/issues/1253)。现在我正在尝试使用pnp js创建一个列表作为解决方法。我的代码看起来像这样:

pnp.sp.web.lists.ensure("listName").then((ler : ListEnsureResult) => {
                    listEnsureResults = ler;

                        if (!ler.created) {

                        resolve(ler.list);
                        return Promise.reject(LIST_EXISTS);
                        }


                        return ler.list.fields.addText("Field1");

                })

我想添加多个列,但我总是在添加多个字段时出错。

1 个答案:

答案 0 :(得分:1)

您可以在SPFx中添加多个要列出的字段:

public addFieldsToList(listname: string): Promise<any> {
    return Promise.all([      
      pnp.sp.web.lists.getByTitle(listname).fields.addText("MyField1"),
      pnp.sp.web.lists.getByTitle(listname).fields.addText("MyField2"),
      pnp.sp.web.lists.getByTitle(listname).fields.addText("MyField3"),
      pnp.sp.web.lists.getByTitle(listname).fields.addText("MyField4"),
    ]).then((response) => {
      return response;
    }, (error: any) => {
      return error;
    }).catch((error: any) => {
      return error;
    });
}

您只需要调用此方法并传递列表名称。