向 Power BI 视觉对象添加登陆页面
- 版本 :2023.1(当前版本)
向 Power BI 视觉对象添加登陆页面
Power BI 视觉对象的登陆页面可以在 Power BI 视觉对象卡获取数据之前显示其中的信息。 视觉对象的登陆页面可以显示:
解释如何使用视觉对象的文本。
指向你的网站的链接。
指向视频的链接。
本文介绍如何为视觉对象设计登陆页面。 只要视觉对象中没有数据,就会显示登陆页面。
备注
API 版本 2.3.0 及更高版本支持设计 Power BI 视觉对象登陆页面。 若要了解正在使用的版本,请检查 pbiviz.json 文件中的 apiVersion
。
创建登陆页面
若要创建一个登陆页面,必须在 capabilities.json
文件中设置两个功能。
若要使登陆页面生效,请启用
supportsLandingPage
。若要在视图模式下显示登陆页面,或使视觉对象即使在非数据角色模式下也为交互式,请启用
supportsEmptyDataView
。
JSON复制
{ "supportsLandingPage": true, "supportsEmptyDataView": true,
}
带有登陆页面的视觉对象的示例
以下代码演示如何将登陆页面添加到条形图视觉对象。
TypeScript复制
export class BarChart implements IVisual { //...
private element: HTMLElement; private isLandingPageOn: boolean;
private LandingPageRemoved: boolean; private LandingPage: d3.Selectionany>;
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();
}
}
}