Obtener y filtrar listas de SharePoint en SPFx con @pnp/sp

Con la libreria SP de PNP podemos obtener facilmente las listas de un site de SharePoint y filtrarlas, un ejemplo de una función que podemos incluir en nuestro código y reutilizarla en función del contexto.

Primero deberéis instalar la librería @pnp/sp

import { Web } from "@pnp/sp";

const getLists = async(webUrl: string, selectProperties: string[], expandProperties: string[], filterQuery: string) => {
    try {
        let web: Web = new Web(webUrl);
        let lists = await web.lists
                              .select(...selectProperties)
                              .expand(...expandProperties)
                              .filter(filterQuery)
                              .get();
        return lists;
    }
    catch(error) {

        //ERROR HANDLER
    }
}

Notas

  • Siembre deberemos enviar como parámetro la url del site.
  • Select y Expand properties nos permite definir que columnas queremos recibir. Si pasamos estos dos parámetros como arrays vacíos obtendremos las columnas por defecto.
  • FilterQuery nos permite añadir filtros extra (ejemplo: ‘BaseTemplate eq 100’), siempre en formato OData. Si pasamos un string vacío no se filtrará.

No Responses

Leave a Reply

Your email address will not be published. Required fields are marked *