Partilhar via


Depurar visuais personalizados do Power BI

Este artigo descreve alguns procedimentos básicos de depuração que você pode usar ao desenvolver seu visual. Depois de ler este artigo, você deve ser capaz de usar os seguintes métodos para depurar seu visual:

Inserir pontos de interrupção

Todo o JavaScript do visual é recarregado toda vez que o visual é atualizado Portanto, quaisquer pontos de interrupção que você adicionar serão perdidos quando o visual de depuração for atualizado. Como solução alternativa, use debugger instruções em seu código. É recomendável desativar a recarga automática enquanto estiver usando debugger seu código. Aqui está um exemplo de como usar uma debugger instrução em seu método de atualização .

public update(options: VisualUpdateOptions) {
    console.log('Visual update', options);
    debugger;
    this.target.innerHTML = `<p>Update count: <em>${(this.updateCount</em></p>`;
}

Exceções de captura

Ao trabalhar em seu visual, você notará que todos os erros são 'consumidos' pelo serviço do Power BI. Este é um recurso intencional do Power BI. Ele evita que visuais com comportamento incorreto façam com que todo o aplicativo se torne instável.

Como solução alternativa, adicione código para capturar e registrar suas exceções ou defina seu depurador para quebrar as exceções detetadas.

Registrar exceções com um decorador

Para registrar exceções em seu visual do Power BI, você precisa definir um decorador de log de exceções. Para fazer isso, adicione o seguinte código ao seu visual:

export function logExceptions(): MethodDecorator {
    return function (target: Object, propertyKey: string, descriptor: TypedPropertyDescriptor<any>): TypedPropertyDescriptor<any> {
        return {
            value: function () {
                try {
                    return descriptor.value.apply(this, arguments);
                } catch (e) {
                    console.error(e);
                    throw e;
                }
            }
        }
    }
}

Você pode usar este decorador em qualquer função para ver o log de erros da seguinte maneira.

@logExceptions()
public update(options: VisualUpdateOptions) {

Quebra nas exceções

Você também pode configurar o navegador para quebrar exceções detetadas. A quebra interrompe a execução do código sempre que um erro acontece e permite que você depure a partir daí.

  1. Ferramentas de desenvolvedor abertas (F12).

  2. Vá para a guia Fontes .

  3. Selecione o ícone Pausar em exceções (sinal de parada com um símbolo de pausa ).

  4. Selecione Pausar em exceções detetadas.

    A captura de tela mostra a guia Depurador com Quebra em todas as exceções selecionadas.

Tem dúvidas? Tente a Comunidade do Power BI