Freigeben über


Seitennavigation

Wenn Sie einen Power BI-Bericht in einer Anwendung laden, können Sie die Power BI-Client-APIs verwenden, um zwischen den Berichtsseiten zu navigieren. Sie können beispielsweise die Standardseite festlegen oder eine Seite dynamisch ändern. Auf diese Weise können Sie ihre eigene benutzerdefinierte Seitennavigation erstellen, um Ihrer Marke zu entsprechen. Sie können seiten auch basierend auf einem festgelegten Kriterium automatisch ändern, um einem Benutzer bestimmte visuelle Elemente und Informationen anzuzeigen.

Jede Seite in einem Bericht wird durch ein Page-Objekt dargestellt. Um alle Seiten in einem Bericht zurückzugeben, rufen Sie die getPages Methode des Berichts auf, die die Seiten als Auflistung von Page Objekten zurückgibt. Die Sammlung von Seiten wird in der gleichen Reihenfolge wie im Bericht zurückgegeben.

Die Report-Klasse definiert die getPages Methode wie folgt:

getPages(): Promise<Page[]>

Zum Beispiel:

let pages = await report.getPages();

Navigieren zwischen Berichtsseiten

Verwenden Sie die Page und Report Objekte in Ihrer Anwendung, um zwischen Berichtsseiten zu navigieren, wie in den Codebeispielen in den folgenden Abschnitten gezeigt.

Festlegen der aktiven Seite

Verwenden Sie die setPage-Methode eines Report-Objekts, um eine vorhandene Seite zur aktiven Seite eines Berichts zu machen.

Die Report-Klasse definiert die setPage Methode wie folgt:

setPage(pageName: string): Promise<void>

Zum Beispiel:

await report.setPage("page2");

Aktuelle Seite aktiv machen

Verwenden Sie die setActive-Methode eines Page-Objekts, um sicherzustellen, dass die Seite für einen bestimmten Bericht immer gültig ist. Um Page Objekte abzurufen, rufen Sie getPages für ein Report-Objekt auf.

Die Page Klasse definiert die setActive Methode wie folgt:

setActive(): Promise<void>

Zum Beispiel:

await page.setActive();

Hinzufügen eines Ereignishandlers

Wenn Sie die Seitennavigation eines Benutzers in einem Bericht überwachen, müssen Sie wissen, wann ein Benutzer Seiten ändert. Fügen Sie dazu einen Ereignishandler für das pageChanged-Ereignis hinzu. Zum Beispiel:

report.on('pageChanged', event => {
    const page = event.detail.newPage;
    console.log(page.name);
});

Weitere Informationen zu Ereignissen finden Sie unter Behandeln von Ereignissen.