Compartilhar via


BaseClientSideWebPart class

Esta classe abstrata implementa a funcionalidade base de uma peça Web do lado do cliente. Todas as peças Web do lado do cliente têm de herdar desta classe.

Extends

BaseWebPart<TProperties>

Comentários

Além da funcionalidade básica, essa classe fornece algumas APIs que podem ser usadas pela Web Part. Essas APIs se enquadram em duas categorias.

A primeira categoria de APIs fornece dados e funcionalidade. Por exemplo, o contexto da Web Part (ou seja, this.context). Essa API deve ser usada para acessar dados contextuais relevantes para essa instância da Web Part.

A segunda categoria de APIs fornece uma implementação básica para o ciclo de vida da Web Part e pode ser substituída por uma implementação atualizada. A API render() é a única API que, obrigatoriamente, precisa ser implementada/substituída por uma Web Part. Qualquer outro ciclo de vida das APIs possui uma implementação básica e pode ser substituído com base nas necessidades da Web Part. Veja a documentação das APIs individuais para tomar a decisão certa.

Construtores

(constructor)()

Construtor para a classe BaseClientSideWebPart.

Propriedades

canOpenPopupOnRender

Essa propriedade indica se uma Web Part pode abrir um pop-up na renderização inicial.

context

Utilize o objeto de contexto para aceder a serviços comuns e ao estado associado ao componente.

domElement

Essa propriedade é um ponteiro para o elemento DOM de raiz da Web Part. Esse é um elemento DIV e contém a subárvore DOM inteira da Web Part.

isRenderAsync

Indica se a Web Part está renderizando no modo Assíncrono.

isVisible

API para ocultar ou mostrar a peça Web. Indica ao anfitrião se a peça Web deve estar oculta. O anfitrião pode decidir remover ou recuperar os efeitos secundários que não são compostos pela implementação de peças Web.

renderedFromPersistedData

Essa propriedade indica se a Web Part foi processada desde os dados persistentes (estado serializado desde a última vez que a Web Part foi salva) ou não.

renderedOnce

Essa propriedade indica se a Web Part foi renderizada uma vez ou não. Após a primeira composição, o valor desta propriedade é sempre verdadeiro até ocorrer uma nova composição completa da peça Web.

width

Esta propriedade devolve a largura do contentor para a peça Web.

Métodos

clearError()

Essa API deve ser usada para limpar a mensagem de erro na área de exibição na Web Part.

onAfterResize(newWidth)

Esta API é invocada quando a largura do elemento dom do contentor da peça Web é alterada, por exemplo, quando a janela do browser é redimensionada e quando o painel de propriedades é ativado/fechado.

onDisplayModeChanged(oldDisplayMode)

Este método de evento é chamado quando o modo de apresentação de uma peça Web é alterado.

onDispose()

Essa API deve ser usada para atualizar o conteúdo do PropertyPane.

onThemeChanged(theme)

Esta API é chamada quando um tema é inicializado ou alterado na página ou na secção atual.

render()

Essa API é chamada para renderizar a Web Part. Não há implementações básicas dessa API e a Web Part é exigida para substituir essa API.

renderCompleted(error, didUpdate)

Essa API deve ser chamada por Web Parts que executam a renderização Assíncrona. Essas Web Parts são necessárias para substituir a API isRenderAsync e retornar true. Um exemplo disso são Web Parts que renderizam conteúdo em um IFrame. A peça Web inicia a composição do IFrame na render() API, mas a composição real só é concluída após a conclusão do carregamento do iframe.

renderError(error)

Essa API deve ser usada para renderizar uma mensagem de erro na área de exibição na Web Part. Também registra a mensagem de erro usando o log de rastreamento.

Detalhes do construtor

(constructor)()

Construtor para a classe BaseClientSideWebPart.

constructor();

Comentários

Recomenda-se vivamente que a peça Web utilize a onInit() API para efetuar qualquer inicialização específica da peça Web. A maioria das funcionalidades da peça Web, como este.context, this.properties não estão disponíveis para serem utilizadas antes da onInit() parte do ciclo de vida de carregamento da peça Web.

Detalhes da propriedade

canOpenPopupOnRender

Essa propriedade indica se uma Web Part pode abrir um pop-up na renderização inicial.

protected get canOpenPopupOnRender(): boolean;

Valor da propriedade

boolean

Comentários

Em alguns ambientes, o anfitrião compõe novamente as peças Web com frequência e, por conseguinte, abrir pop-ups durante a composição fará com que os pop-ups sejam abertos repetidamente, o que é uma má experiência de utilizador. Por exemplo, as páginas clássicas do SharePoint executam postbacks, fazendo com que a página volte a compor em todos os cliques de botões.

Se uma Web Part precisar abrir um pop-up durante a renderização, ela deverá usar essa API antes de abrir o pop-up. Se essa API retornar false, a Web Part não deverá abrir o pop-up na renderização inicial. Algumas Web Parts que abrem pop-ups durante a renderização são: a Web Part inserida no documento que exibe o selecionador de arquivos na renderização inicial e a Web Part inserida de vídeo que exibe o PropertyPane na renderização inicial.

context

Utilize o objeto de contexto para aceder a serviços comuns e ao estado associado ao componente.

readonly context: WebPartContext;

Valor da propriedade

Comentários

Espera-se que as classes subordinadas substituam este campo ao voltar a declará-lo com um tipo especializado. Destina-se a ser uma propriedade só de leitura; o tipo não pode ser declarado como só de leitura na classe base (porque está inicializado fora do construtor), mas as classes subordinadas devem voltar a declará-lo como só de leitura.

domElement

Essa propriedade é um ponteiro para o elemento DOM de raiz da Web Part. Esse é um elemento DIV e contém a subárvore DOM inteira da Web Part.

protected get domElement(): HTMLElement;

Valor da propriedade

HTMLElement

isRenderAsync

Indica se a Web Part está renderizando no modo Assíncrono.

/** @virtual */
protected get isRenderAsync(): boolean;

Valor da propriedade

boolean

Comentários

Se a Web Part substituir esse campo para retornar true, ela precisará chamar a API renderCompleted após concluir a renderização da Web Part.

O valor padrão é falso.

isVisible

Observação

Esta API é fornecida como uma versão prévia para desenvolvedores e pode ser alterada com base nos comentários que recebemos. Não use esta API em um ambiente de produção.

API para ocultar ou mostrar a peça Web. Indica ao anfitrião se a peça Web deve estar oculta. O anfitrião pode decidir remover ou recuperar os efeitos secundários que não são compostos pela implementação de peças Web.

protected get isVisible(): boolean;

protected set isVisible(value: boolean);

Valor da propriedade

boolean

Comentários

Isto NÃO funciona no modo de edição.

renderedFromPersistedData

Essa propriedade indica se a Web Part foi processada desde os dados persistentes (estado serializado desde a última vez que a Web Part foi salva) ou não.

protected get renderedFromPersistedData(): boolean;

Valor da propriedade

boolean

Comentários

Exemplo: Quando a Web Part é adicionada pela primeira vez usando ferramentas, o valor é false.

renderedOnce

Essa propriedade indica se a Web Part foi renderizada uma vez ou não. Após a primeira composição, o valor desta propriedade é sempre verdadeiro até ocorrer uma nova composição completa da peça Web.

protected get renderedOnce(): boolean;

Valor da propriedade

boolean

width

Esta propriedade devolve a largura do contentor para a peça Web.

protected get width(): number;

Valor da propriedade

number

Comentários

As peças Web devem utilizar esta propriedade para efetuar operações como qualquer estilo condicional de componentes com base na largura disponível inicial da peça Web.

Detalhes do método

clearError()

Essa API deve ser usada para limpar a mensagem de erro na área de exibição na Web Part.

protected clearError(): void;

Retornos

void

onAfterResize(newWidth)

Esta API é invocada quando a largura do elemento dom do contentor da peça Web é alterada, por exemplo, quando a janela do browser é redimensionada e quando o painel de propriedades é ativado/fechado.

/** @virtual */
protected onAfterResize(newWidth: number): void;

Parâmetros

newWidth

number

Largura (em píxeis) do contentor para a peça Web após o evento de redimensionamento.

Retornos

void

Comentários

As peças Web devem utilizar este método para efetuar operações como componentes potencialmente de re composição com base na nova largura disponível para a peça Web.

onDisplayModeChanged(oldDisplayMode)

Este método de evento é chamado quando o modo de apresentação de uma peça Web é alterado.

/** @virtual */
protected onDisplayModeChanged(oldDisplayMode: DisplayMode): void;

Parâmetros

oldDisplayMode
DisplayMode

O modo de exibição antigo.

Retornos

void

Comentários

A implementação padrão dessa API chama o método de renderização da Web Part para renderizar a Web Part novamente com o novo modo de exibição. Se o desenvolvedor de Web Parts não desejar que uma nova renderização completa aconteça na alteração do modo de exibição, ele pode substituir essa API e executar atualizações específicas no DOM da Web Part para mudar seu modo de exibição.

Se a peça Web for inicializada ou re-inicializada ao mudar para um modo de visualização diferente, este método de ciclo de vida não é chamado. Exemplo: Página de Site do SharePoint.

onDispose()

Essa API deve ser usada para atualizar o conteúdo do PropertyPane.

/** @virtual */
protected onDispose(): void;

Retornos

void

Comentários

Essa API é chamada no final do ciclo de vida da Web Part em uma página. Ela deve ser usada para descartar recursos locais (ou seja, elementos DOM) que mantêm a Web Part. Essa API deve ser chamada em cenários como a navegação de página, ou seja, o host está fazendo a transição de uma página para outra e descarta a página que está sendo migrada.

onThemeChanged(theme)

Esta API é chamada quando um tema é inicializado ou alterado na página ou na secção atual.

/** @virtual */
protected onThemeChanged(theme: IReadonlyTheme | undefined): void;

Parâmetros

theme

IReadonlyTheme | undefined

Novo tema para a página ou secção

Retornos

void

Comentários

Os programadores não chamam a composição no método substituído. Pode levar a um novo fluxo não preterido da peça Web. a composição será chamada a partir da classe base quando for necessário.

render()

Essa API é chamada para renderizar a Web Part. Não há implementações básicas dessa API e a Web Part é exigida para substituir essa API.

protected abstract render(): void;

Retornos

void

renderCompleted(error, didUpdate)

Essa API deve ser chamada por Web Parts que executam a renderização Assíncrona. Essas Web Parts são necessárias para substituir a API isRenderAsync e retornar true. Um exemplo disso são Web Parts que renderizam conteúdo em um IFrame. A peça Web inicia a composição do IFrame na render() API, mas a composição real só é concluída após a conclusão do carregamento do iframe.

protected renderCompleted(error?: Error, didUpdate?: boolean): void;

Parâmetros

error

Error

objeto de erro que indica que a composição assíncrona foi concluída com um erro

didUpdate

boolean

utilizado para substituir o tempo de desempenho final com o tempo de composição da sincronização

Retornos

void

renderError(error)

Essa API deve ser usada para renderizar uma mensagem de erro na área de exibição na Web Part. Também registra a mensagem de erro usando o log de rastreamento.

protected renderError(error: Error): void;

Parâmetros

error

Error

Um objeto de erro contendo a mensagem de erro para renderizar.

Retornos

void