Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Ett visuellt Power BI-objekts landningssida kan visa information i ditt visuella Power BI-kort innan kortet hämtar data. Ett visuellt objekts landningssida kan visa:
- Text som förklarar hur du använder det visuella objektet.
- En länk till din webbplats.
- En länk till en video.
Den här artikeln beskriver hur du utformar en landningssida för ditt visuella objekt. Landningssidan visas när det visuella objektet inte har några data i sig.
Kommentar
Design av en visuell Power BI-landningssida stöds i API-version 2.3.0 och senare. Om du vill ta reda på vilken version du använder kontrollerar apiVersion
du i filen pbiviz.json .
Skapa en landningssida
För att skapa en landningssida måste två funktioner anges i capabilities.json
filen.
- Aktivera för att landningssidan ska fungera
supportsLandingPage
. - Aktivera för att landningssidan ska visas i visningsläge eller för att det visuella objektet ska vara interaktivt även om det inte är i något datarollerläge.
supportsEmptyDataView
{
"supportsLandingPage": true,
"supportsEmptyDataView": true,
}
Exempel på ett visuellt objekt med en landningssida
Följande kod visar hur en landningssida kan läggas till i ett visuellt stapeldiagram.
export class BarChart implements IVisual {
//...
private element: HTMLElement;
private isLandingPageOn: boolean;
private LandingPageRemoved: boolean;
private LandingPage: d3.Selection<any>;
constructor(options: VisualConstructorOptions) {
//...
this.element = options.element;
//...
}
public update(options: VisualUpdateOptions) {
//...
this.HandleLandingPage(options);
}
private HandleLandingPage(options: VisualUpdateOptions) {
if(!options.dataViews || !options.dataViews[0]?.metadata?.columns?.length){
if(!this.isLandingPageOn) {
this.isLandingPageOn = true;
const SampleLandingPage: Element = this.createSampleLandingPage(); //create a landing page
this.element.appendChild(SampleLandingPage);
this.LandingPage = d3.select(SampleLandingPage);
}
} else {
if(this.isLandingPageOn && !this.LandingPageRemoved){
this.LandingPageRemoved = true;
this.LandingPage.remove();
}
}
}