Navegação na página
Ao carregar um relatório do Power BI em um aplicativo, você pode usar as APIs do Cliente do Power BI para navegar entre suas páginas de relatório. Por exemplo, você pode definir a página padrão ou alterar uma página dinamicamente. Isso permite que você crie sua própria navegação de página personalizada para corresponder à sua marca. Você também pode alterar páginas automaticamente com base em um critério definido para mostrar a um usuário determinados visuais e informações.
Cada página em um relatório é representada por um objeto Page . Para retornar todas as páginas em um relatório, chame o método do getPages
relatório, que retorna as páginas como uma coleção de Page
objetos. A coleção de páginas é retornada na mesma ordem que no relatório.
A classe Report define o método da getPages
seguinte maneira:
getPages(): Promise<Page[]>
Por exemplo:
let pages = await report.getPages();
Como navegar entre páginas de relatório
Use os objetos Page e Report em seu aplicativo para navegar entre páginas de relatório, conforme mostrado pelos exemplos de código nas seções a seguir.
Definir a página ativa
Use o setPage
método de um Report
objeto para tornar uma página existente a página ativa de um relatório.
A classe Report define o método da setPage
seguinte maneira:
setPage(pageName: string): Promise<void>
Por exemplo:
await report.setPage("page2");
Tornar a página atual ativa
Use o setActive
método de um Page
objeto para garantir que a página seja sempre válida para um determinado relatório. Para obter Page
objetos, chame getPages
um Report
objeto.
A classe Page define o método da setActive
seguinte maneira:
setActive(): Promise<void>
Por exemplo:
await page.setActive();
Adicionar um manipulador de eventos
Ao monitorar a navegação da página de um usuário em um relatório, você precisa estar ciente de quando um usuário altera as páginas. Para fazer isso, adicione um manipulador de eventos para o pageChanged
evento. Por exemplo:
report.on('pageChanged', event => {
const page = event.detail.newPage;
console.log(page.name);
});
Para obter mais informações sobre eventos, consulte Como lidar com eventos.