Implementación en todo el inquilino de las Extensiones de SharePoint Framework

La opción de implementación en todos los espacios empresariales de las extensiones de SharePoint Framework (SPFx) se admite en los personalizadores de aplicación y para los conjuntos de comandos de visualización de la lista. Proporciona una opción sencilla para que los administradores del Catálogo de aplicaciones del espacio empresarial gestionen qué extensiones se activan de forma predeterminada en el inquilino o en función de las plantillas de la lista o de la web utilizadas en los sitios.

Nota:

Las extensiones de SharePoint Framework son compatibles con las experiencias modernas, independientemente de la plantilla de sitio que se haya utilizado al crear el contenido del sitio.

Cuando los programadores crean una nueva solución de extensión de SharePoint Framework mediante los paquetes de SharePoint Framework de Yeoman, la automatización en el paquete de solución para activar la extensión en el inquilino está incluida.

Advertencia

A partir de la versión 1.6 de SharePoint Framework, el scaffolding predeterminado creará archivos de ejemplo en SharePoint Solution para activar la extensión en el espacio empresarial si prefiere usar la opción de implementación con ámbito del espacio empresarial.

La solución de SharePoint Framework debe configurarse para que use la opción de implementación con ámbito de espacio empresarial y así poder activar automáticamente las extensiones en el espacio empresarial con la funcionalidad de implementación en todos los espacios empresariales. Esto significa que el atributo skipFeatureDeployment en package-solution.json debe definirse como true.

Controlar la implementación en todos los inquilinos desde la colección de sitios del Catálogo de aplicaciones

La colección de sitios del catálogo de aplicaciones se usa para implementar complementos de SharePoint y de SharePoint Framework en el inquilino. Esta colección de sitios se crea mediante el Administrador de inquilinos y se usa para administrar qué personalizaciones están disponibles para los usuarios finales en las colecciones de sitios de contenido real.

La colección de sitios del catálogo de aplicaciones contiene la lista Extensiones en todos los inquilinos, que puede usarse para gestionar las activaciones de extensión de SharePoint Framework en el inquilino. Se puede acceder a esta lista desde la página contenido del sitio del sitio del catálogo de aplicaciones.

Se pueden activar extensiones de SharePoint Framework específicas a nivel de inquilino añadiendo entradas a la lista Extensiones en todos los inquilinos. Cada entrada puede dirigirse a una plantilla web o a un tipo de lista específicos, según los requisitos funcionales.

Estas configuraciones específicas de la lista se resuelven en el tiempo de ejecución cuando los usuarios finales acceden a páginas de las colecciones de sitio de contenido. Esto significa que los cambios aplicados a esta lista están disponibles para los sitios nuevos y existentes en el inquilino.

Las soluciones de SharePoint Framework pueden contener la automatización, que agregará automáticamente una entrada a la lista de extensiones en todos los inquilinos, cuando se agrega la solución.

Importante

La funcionalidad puede tardar hasta 20 minutos en activarse después de añadir la primera entrada a la lista Extensiones en todos los espacios empresariales de un espacio empresarial determinado.

Descripción de la lista de implementación en todos los inquilinos

El inquilino debe tener un id. de componente para poder añadirle entradas.

Column Tipo Descripción
Título Cadena Título de la tarea. Puede ser una entrada descriptiva para el registro.
Identificador del componente Guid Id. de manifiesto del componente. Tiene que tener formato GUID y el componente debe estar en el Catálogo de aplicaciones.
Propiedades del componente Cadena Propiedades del componente opcionales
Plantilla web Cadena Se puede usar para dirigir la extensión únicamente a una plantilla web específica. Consulte los valores posibles en la tabla más abajo.
Plantilla de lista Entero Tipo de lista, como un número. Consulte los valores posibles en la tabla más abajo.
Ubicación Cadena Ubicación de la entrada. Hay distintas ubicaciones de soporte para los personalizadores de aplicaciones y los conjuntos de comandos de visualización de la lista.
Secuencia Entero Secuencia de la entrada en la renderización.
Propiedades del host Cadena Configuración adicional del servidor, como la altura previamente asignada para marcadores de posición.
Deshabilitado Boolean La entrada está habilitada o deshabilitada.

Para la columna de Plantilla web, técnicamente se admite cualquier definición. La tabla siguiente define las plantillas que se usan con más frecuencia.

Plantilla Id. de plantilla web
Sitio del equipo de asociados del grupo GROUP#0
Sitio de comunicación SITEPAGEPUBLISHING#0
Sitio de equipo moderno sin ningún grupo STS#3
Un sitio de grupo clásico STS#0
Un sitio de publicación clásico BLANKINTERNET#0

Para la columna de la plantilla de lista, técnicamente se admite cualquier identificador de lista, pero solo los conjuntos secundarios de tipos de lista clásicos admiten experiencias modernas.

Lista Id. de lista
Lista personalizada 100
Biblioteca de documentos 101

Los valores de ubicación compatibles son los siguientes. Estos son específicos para el tipo de componente.

Valor Tipo de componente Descripción
ClientSideExtension.ApplicationCustomizer Personalizador de aplicación Obligatorio para el personalizador de aplicación.
ClientSideExtension.ListViewCommandSet.ContextMenu Conjunto de comandos de ListView Muestra los botones de visualización de lista en el menú contextual de los elementos de una lista.
ClientSideExtension.ListViewCommandSet.CommandBar Conjunto de comandos de ListView Muestra los botones de visualización de lista en la barra de comandos de la lista.
ClientSideExtension.ListViewCommandSet Conjunto de comandos de ListView Muestran los botones de visualización de lista en el menú contextual y la barra de comandos.

Nota:

Técnicamente, esta lista define las entradas dinámicas que se añadirán automáticamente a la colección Web o List UserCustom Action cuando una página de un sitio se renderice. Se almacena en caché la información de la lista y es contenido de salida como parte de la renderización de páginas en el tiempo de ejecución.

Automatizar la implementación en todos los inquilinos desde el paquete de solución

El generador de SharePoint Framework agrega el archivo ./sharepoint/assets/ClientSideInstance.xml a las nuevas soluciones cuando el tipo de componente inicial seleccionado es una extensión.

Proyecto de soluciones del lado cliente de SharePoint

ClientSideInstance.xml se tiene en cuenta en la activación de la solución en el Catálogo de aplicaciones si el atributo skipFeatureDeployment está establecido en true en el archivo package-solution.json.

Este archivo contiene la siguiente estructura de forma predeterminada. El elemento ClientSideComponentInstance indica a SharePoint que añada automáticamente una entrada a la lista de implementación en todos los inquilinos cuando el paquete de solución se añada al Catálogo de aplicaciones.

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <ClientSideComponentInstance
      Title="MyAppCust"
      Location="ClientSideExtension.ApplicationCustomizer"
      ComponentId="917a86f2-15c1-403e-bbe1-59c6bd50d1e1"
      Properties="{&quot;testMessage&quot;:&quot;Test message&quot;}">
  </ClientSideComponentInstance>
</Elements>

Si seleccionó Solo SharePoint Online (versión más reciente) como entorno de destino seleccionado cuando se creó la solución de SharePoint Framework, también se hace referencia al archivo ClientSideInstance.xml en package-solution.json, de modo que se incluya dentro del archivo *.sppkg al empaquetar la solución.

Importante

Si selecciona otro entorno de destino, mientras el archivo ClientSideInstance.xml se agrega al proyecto, no se incluirá en el archivo package-solution.json . Mientras SharePoint Server 2019 (que incluye SharePoint Framework v1.4, vea Funcionalidades compatibles para ver más detalles) admite la implementación del ámbito empresarial, no es compatible con la implementación de todo el espacio empresarial (agregado a SharePoint Framework v1.6, vea Implementación de extensiones para todo el espacio empresarial para obtener más información).

Si se hace referencia a este archivo en package-solution.json, la carga del archivo *.sppkg generado en el catálogo de aplicaciones de inquilino SharePoint Server 2019 producirá una excepción.

Nota:

Si no desea que este archivo esté presente en el archivo *.sppkg , puede quitarlo fácilmente del proceso de empaquetado actualizando el archivo package-solution.json .

El elemento ClientSideComponentInstance admite los siguientes atributos.

Atributo Obligatorio Descripción
Title Título de la tarea. Puede ser una entrada descriptiva para el registro.
Location Entrada de ubicación para el registro de extensión
ComponentId Id. de manifiesto del componente
Properties Propiedades opcionales del componente. Observe que este es un atributo obligatorio a nivel de xml, que se puede establecer como cadena vacía si no se requiere ninguna propiedad. El valor también debe codificarse correctamente para que los valores de propiedad se puedan proporcionar en el formato xml.
ListTemplateId No Identificador del tipo de plantilla de lista opcional al que se debe activar la extensión
WebTemplateId No Identificador de plantilla web opcional para definir el tipo de sitio en el que se debe activar la extensión
Sequence No Orden de la secuencia de activación opcional para las extensiones. Se usa si varias extensiones se activan en un mismo ámbito.
HostProperties No Configuración opcional del servidor, como definir la altura previamente asignada para marcadores de posición.

La siguiente definición de xml muestra cómo se pueden usar los valores opcionales como parte del registro.

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <ClientSideComponentInstance
      Title="MyAppCust"
      Location="ClientSideExtension.ApplicationCustomizer"
      ComponentId="917a86f2-15c1-403e-bbe1-59c6bd50d1e1"
      Properties="{&quot;testMessage&quot;:&quot;Test message&quot;}"
      ListTemplateId="100"
      WebTemplateId="GROUP#0"
      Sequence="10"
      HostProperties="{&quot;preAllocatedApplicationCustomizerTopHeight&quot;:&quot;50&quot;,&quot;preAllocatedApplicationCustomizerBottomHeight&quot;:&quot;50&quot;}">
  </ClientSideComponentInstance>
</Elements>

Cuando un administrador agrega una solución que tiene un archivo ClientSideInstance.xml dentro de ella al Catálogo de aplicaciones, se muestra un mensaje de advertencia específico para asegurarse de que se conoce la presencia de la configuración automatizada.

Paquete de SharePoint Framework de confianza implementado en el catálogo de aplicaciones del espacio empresarial

Después de la implementación de la solución, el administrador puede cambiar la configuración de implementación desde la lista Extensiones en todos los inquilinos.