Compartir a través de


BaseWebPart class

Esta clase abstracta implementa la funcionalidad base independiente de la interfaz de usuario para un elemento web del lado cliente. El propósito es permitir un núcleo común entre 2D y MR WebParts.

Extends

Constructores

(constructor)()

Constructor de la BaseWebPart clase .

Propiedades

accessibleTitle

Esta propiedad apunta al título accesible del elemento web que se pone a disposición de los lectores de pantalla. La implementación base devuelve ese título predeterminado en el manifiesto. Los elementos web que quieran proporcionar un título más descriptivo con información contextual deberán invalidar esta API. virtual

context

Use el objeto de contexto para acceder a los servicios comunes y al estado asociados al componente.

dataVersion

El valor de esta propiedad se almacena en los datos serializados del elemento web para permitir que los desarrolladores administren el control de versiones de su elemento web. La versión predeterminada es 1.0.

description

Descripción del elemento web.

disableReactivePropertyChanges

Esta propiedad se usa para cambiar la interacción del panel de propiedades del elemento web de Reactivo a No reactivo. virtual

displayMode

Esta propiedad es el modo de presentación actual del elemento web.

previewImageUrl

Esta propiedad apunta a la imagen de vista previa del elemento web. La implementación base devuelve undefined. Los elementos web que quieran proporcionar una dirección URL válida de imagen de vista previa deberán invalidar esta API. La dirección URL de imagen de vista previa puede usarse para crear una vista previa del elemento web o de la página en la que está presente el elemento web. virtual

properties

Esta propiedad es el puntero al contenedor de propiedades personalizadas del elemento web.

propertiesMetadata

Esta propiedad define los metadatos del contenedor de propiedades del elemento web. Los metadatos pueden ayudar a SharePoint a entender mejor el contenido de las propiedades y a realizar los servicios pertinentes en los datos. virtual

title

Título del elemento web.

Métodos

getPropertyPaneConfiguration()

Esta API se usa para obtener la configuración para crear el panel de propiedades del elemento web. Si el elemento web quiere usar el panel de propiedades para la configuración, es necesario invalidar esta API y el elemento web debe devolver la configuración del panel de propiedades.

Esta API no se invoca hasta que se resuelve la promesa "loadPropertyPaneResources".

Consulte IPropertyPane y otra documentación wiki de integración de PropertyPane para obtener más detalles. virtual

getTopActionsConfiguration()

Devuelve la configuración de las acciones principales o no definidas de este elemento web si el elemento web no admite acciones principales.

loadPropertyPaneResources()

Esta API permite la carga asincrónica de recursos relacionados con el panel de propiedades del elemento web.

onAfterDeserialize(deserializedObject, dataVersion)

Se llama a esta API después de que el elemento web se deserialice en un objeto, justo antes de que se llene el contenedor de propiedades. virtual

onAfterPropertyPaneChangesApplied()

Esta API se invoca después de que los cambios realizados en el panel de propiedades se apliquen cuando este se usa en modo no reactivo. Esta API no se invoca cuando el panel de propiedades se usa en modo reactivo. virtual

onBeforeSerialize()

Se llama a este método de evento antes de serializar el elemento web. virtual

onDisplayModeChanged(oldDisplayMode)

Se llama a este método de evento cuando se cambia el modo de presentación de un elemento web. virtual

onDispose()

Esta API se debe usar para actualizar el contenido del panel de propiedades. virtual

onInit()

Se llama a este método de evento cuando se inicializa el elemento web. virtual

onPropertyPaneConfigurationComplete()

Esta API se invoca cuando se completa la configuración en el panel de propiedades. virtual

onPropertyPaneConfigurationStart()

Este método de evento se invoca cuando se inicia la configuración en propertypane. virtual

onPropertyPaneFieldChanged(propertyPath, oldValue, newValue)

Esta API se invoca después de actualizar el nuevo valor de la propiedad en el contenedor de propiedades cuando el panel de propiedades se usa en modo reactivo. virtual

onPropertyPaneRendered()

Esta API se invoca cuando se representa el panel de propiedades. virtual

Detalles del constructor

(constructor)()

Constructor de la BaseWebPart clase .

constructor();

Comentarios

Se recomienda que el elemento web use la API de OnInit para realizar cualquier inicialización específica del elemento web. La mayoría de las características de los elementos web, como this.context y this.properties, no están disponibles para su uso antes de la parte onInit del ciclo de vida de carga del elemento web.

Detalles de las propiedades

accessibleTitle

Esta propiedad apunta al título accesible del elemento web que se pone a disposición de los lectores de pantalla. La implementación base devuelve ese título predeterminado en el manifiesto. Los elementos web que quieran proporcionar un título más descriptivo con información contextual deberán invalidar esta API. virtual

protected get accessibleTitle(): string;

Valor de propiedad

string

context

Use el objeto de contexto para acceder a los servicios comunes y al estado asociados al componente.

readonly context: BaseWebPartContext;

Valor de propiedad

Comentarios

Se espera que las clases secundarias invaliden este campo al volver a declararlo con un tipo especializado. Está pensado para ser una propiedad de solo lectura; el tipo no se puede declarar como de solo lectura en la clase base (porque se inicializa fuera del constructor), pero las clases secundarias deben volver a declararlo como readonly.

dataVersion

El valor de esta propiedad se almacena en los datos serializados del elemento web para permitir que los desarrolladores administren el control de versiones de su elemento web. La versión predeterminada es 1.0.

protected get dataVersion(): Version;

Valor de propiedad

description

Descripción del elemento web.

protected get description(): string;

Valor de propiedad

string

disableReactivePropertyChanges

Esta propiedad se usa para cambiar la interacción del panel de propiedades del elemento web de Reactivo a No reactivo. virtual

protected get disableReactivePropertyChanges(): boolean;

Valor de propiedad

boolean

Comentarios

El comportamiento predeterminado es Reactivo.

Reactivo implica que los cambios realizados en el panel de propiedades se transmiten al elemento web al instante y el usuario puede ver actualizaciones instantáneas. Esto ayuda al creador de la página a obtener información instantánea para decidir si debe guardar los nuevos cambios en la configuración o no.

NonReactive implica que los cambios de configuración se transmiten al elemento web solo después de hacer clic en el botón PropertyPane "Aplicar".

displayMode

Esta propiedad es el modo de presentación actual del elemento web.

get displayMode(): DisplayMode;

Valor de propiedad

previewImageUrl

Esta propiedad apunta a la imagen de vista previa del elemento web. La implementación base devuelve undefined. Los elementos web que quieran proporcionar una dirección URL válida de imagen de vista previa deberán invalidar esta API. La dirección URL de imagen de vista previa puede usarse para crear una vista previa del elemento web o de la página en la que está presente el elemento web. virtual

get previewImageUrl(): string | undefined;

Valor de propiedad

string | undefined

properties

Esta propiedad es el puntero al contenedor de propiedades personalizadas del elemento web.

protected get properties(): TProperties;

Valor de propiedad

TProperties

propertiesMetadata

Esta propiedad define los metadatos del contenedor de propiedades del elemento web. Los metadatos pueden ayudar a SharePoint a entender mejor el contenido de las propiedades y a realizar los servicios pertinentes en los datos. virtual

protected get propertiesMetadata(): IWebPartPropertiesMetadata | undefined;

Valor de propiedad

Comentarios

Consulte IWebPartPropertiesMetadata para obtener más información sobre cómo definir metadatos.

title

Título del elemento web.

protected get title(): string;

Valor de propiedad

string

Detalles del método

getPropertyPaneConfiguration()

Esta API se usa para obtener la configuración para crear el panel de propiedades del elemento web. Si el elemento web quiere usar el panel de propiedades para la configuración, es necesario invalidar esta API y el elemento web debe devolver la configuración del panel de propiedades.

Esta API no se invoca hasta que se resuelve la promesa "loadPropertyPaneResources".

Consulte IPropertyPane y otra documentación wiki de integración de PropertyPane para obtener más detalles. virtual

protected getPropertyPaneConfiguration(): IPropertyPaneConfiguration;

Devoluciones

getTopActionsConfiguration()

Devuelve la configuración de las acciones principales o no definidas de este elemento web si el elemento web no admite acciones principales.

getTopActionsConfiguration(): ITopActions | undefined;

Devoluciones

ITopActions | undefined

loadPropertyPaneResources()

Esta API permite la carga asincrónica de recursos relacionados con el panel de propiedades del elemento web.

/** @virtual */
protected loadPropertyPaneResources(): Promise<void>;

Devoluciones

Promise<void>

Comentarios

Si no lo invalida el elemento web, el elemento web base resuelve la promesa inmediatamente.

Se llama a este método antes de llamar a las API de panel de propiedades. No se pueden llamar a otras API del panel de propiedades hasta que se resuelva esta promesa. No se genera ningún otro evento relacionado con el panel de propiedades excepto "PropertyPaneConfigurationComplete".

Se puede generar el evento "PropertyPaneConfigurationComplete" para limpiar los recursos pendientes, incluida la promesa "loadPropertyPaneResources".

onAfterDeserialize(deserializedObject, dataVersion)

Se llama a esta API después de que el elemento web se deserialice en un objeto, justo antes de que se llene el contenedor de propiedades. virtual

protected onAfterDeserialize(deserializedObject: any, dataVersion: Version): TProperties;

Parámetros

deserializedObject

any

Objeto deserializado de los datos almacenados. Tenga en cuenta que el esquema de este objeto no es necesariamente coherente con el contenedor de propiedades actual, ya que la serialización podría haberla llevado a cabo una versión anterior del elemento web.

dataVersion
Version

Versión de datos de los datos almacenados que se están deserializando. Puede usar este valor para determinar si los datos los ha serializado un elemento web más antiguo. Los elementos web pueden definir su versión de datos mediante la invalidación de la propiedad dataVersion.

Devoluciones

TProperties

Contenedor de propiedades del elemento web.

Comentarios

La implementación predeterminada es ninguna operación. Un desarrollador de elementos web puede invalidar esta API si el objeto deserializado no refleja por completo el estado inicial del contenedor de propiedades. Esto le ofrece al desarrollador la oportunidad de llenar el contenedor de propiedades justo después de que los datos se deserialicen un objeto.

Un escenario importante para el uso de la deserialización es la actualización. Un elemento web actualizado puede cargar los datos serializados por una versión anterior del elemento web que admite un esquema diferente del contenedor de propiedades, lo que hace que el objeto deserializado sea incoherente con el esquema actual del contenedor de propiedades. El desarrollador puede usar onAfterDeserialize para comprobar dataVersion y corregir el contenedor de propiedades.

onAfterPropertyPaneChangesApplied()

Esta API se invoca después de que los cambios realizados en el panel de propiedades se apliquen cuando este se usa en modo no reactivo. Esta API no se invoca cuando el panel de propiedades se usa en modo reactivo. virtual

protected onAfterPropertyPaneChangesApplied(): void;

Devoluciones

void

onBeforeSerialize()

Se llama a este método de evento antes de serializar el elemento web. virtual

protected onBeforeSerialize(): void;

Devoluciones

void

Comentarios

La implementación predeterminada es ninguna operación. El proceso de serialización serializa el contenedor de propiedades del elemento web, es decir, this.properties. Esta API ofrece al elemento web la oportunidad de actualizar su contenedor de propiedades antes de que se produzca la serialización. Algunos elementos web pueden mantener su estado otros objetos o incluso en el DOM. Si un elemento web necesita conservar parte de ese estado, debe invalidar esta API y actualizar el contenedor de propiedades del elemento web al estado más reciente. Si un elemento web actualiza el contenedor de propiedades con valores de propiedad no válidos, se conservarán. Por lo tanto, eso debe evitarse. El contenedor de propiedades del elemento web siempre debe contener valores de propiedad válidos.

onDisplayModeChanged(oldDisplayMode)

Se llama a este método de evento cuando se cambia el modo de presentación de un elemento web. virtual

protected onDisplayModeChanged(oldDisplayMode: DisplayMode): void;

Parámetros

oldDisplayMode
DisplayMode

Modo de presentación anterior.

Devoluciones

void

Comentarios

La implementación predeterminada de esta API llama al método de representación del elemento web para volver a representar el elemento web con el nuevo modo de presentación. Si un desarrollador de elementos web no quiere que se produzca una nueva representación completa al cambiar el modo de presentación, puede invalidar esta API y realizar actualizaciones específicas en el DOM del elemento web para cambiar su modo de presentación.

Si el elemento web se inicializa o se vuelve a inicializar al cambiar a un modo de presentación diferente, no se llama a este método de ciclo de vida. Ejemplo: Página de sitio de SharePoint.

onDispose()

Esta API se debe usar para actualizar el contenido del panel de propiedades. virtual

protected onDispose(): void;

Devoluciones

void

Comentarios

Se llama a esta API al final del ciclo de vida del elemento web en una página. Debe usarse para eliminar los recursos locales (es decir, elementos DOM) que el elemento web mantiene. Se espera una llamada a esta API en escenarios como la navegación por páginas, es decir, el host realiza la transición de una página a otra y elimina la página de la que sale.

onInit()

Se llama a este método de evento cuando se inicializa el elemento web. virtual

protected onInit(): Promise<void>;

Devoluciones

Promise<void>

Comentarios

Es necesario invalidar esta API para realizar operaciones de ejecución prolongada, por ejemplo, la obtención de datos de un servicio remoto antes de la representación inicial del elemento web. Durante la vida útil de este método, se muestra el indicador de carga. Se llama a esta API solo una vez durante el ciclo de vida de un elemento web.

onPropertyPaneConfigurationComplete()

Esta API se invoca cuando se completa la configuración en el panel de propiedades. virtual

protected onPropertyPaneConfigurationComplete(): void;

Devoluciones

void

Comentarios

Este método de evento se invoca en los casos siguientes:

  • Cuando el CONFIGURATION_COMPLETE_TIMEOUT((actualmente el valor es de 5 segundos) transcurre después del último cambio.

  • Cuando el usuario hace clic en el botón "X" (cerrar) antes de que transcurra el CONFIGURATION_COMPLETE_TIMEOUT.

  • Cuando el usuario hace clic en el botón "Aplicar" antes de que transcurra el CONFIGURATION_COMPLETE_TIMEOUT.

  • Cuando el usuario cambia los elementos web, el elemento web actual obtiene este evento.

onPropertyPaneConfigurationStart()

Este método de evento se invoca cuando se inicia la configuración en propertypane. virtual

protected onPropertyPaneConfigurationStart(): void;

Devoluciones

void

Comentarios

Este método de evento se invoca en los casos siguientes:

  • Cuando se abre el panel de propiedades.

  • Cuando el usuario cambia los elementos web, el nuevo elemento web obtiene este evento.

onPropertyPaneFieldChanged(propertyPath, oldValue, newValue)

Esta API se invoca después de actualizar el nuevo valor de la propiedad en el contenedor de propiedades cuando el panel de propiedades se usa en modo reactivo. virtual

protected onPropertyPaneFieldChanged(propertyPath: string, oldValue: any, newValue: any): void;

Parámetros

propertyPath

string

Ruta de acceso JSON de la propiedad del contenedor de propiedades. En el caso del campo personalizado, si no se proporciona ninguna propiedad de destino, se asigna un valor personalizado, que tendrá el formato de __CustomField_<key provided when the custom field is created>.

oldValue

any

Valor anterior de la propiedad. Este valor podría ser indefinido o vacío en el caso del campo personalizado.

newValue

any

Nuevo valor de la propiedad. Este valor podría ser indefinido o vacío en el caso del campo personalizado.

Devoluciones

void

onPropertyPaneRendered()

Esta API se invoca cuando se representa el panel de propiedades. virtual

protected onPropertyPaneRendered(): void;

Devoluciones

void