Verwenden von Bootstrap für bessere Leistung

powerbi.bootstrap ist eine Methode, die in Client SDK Version 2.9.0 eingeführt wurde, um Entwicklern dabei zu helfen, Power BI-Entitäten schneller einzubetten und eine bessere Leistung zu erzielen.

Das Einbetten eines Berichts mit erfordert powerbi.embed mehrere Parameter, z reportId. B. , embedURLund accessToken. Diese Parameter sind nicht immer sofort verfügbar.

powerbi.bootstrap ermöglicht es Ihnen, mit der Einbettung zu beginnen, bevor alle erforderlichen Parameter verfügbar sind. Die Bootstrap-API bereitet den iFrame vor und initialisiert ihn.

Nachdem die erforderlichen Parameter empfangen wurden, powerbi.embed(element, config) sollte für dasselbe HTML-Element aufgerufen werden.

Bootstrap-API

Die powerbi.bootstrap(element, config) -Methode empfängt ein -Element und eine Konfiguration, die mit identisch ist powerbi.embed(...).

/**
    * Given an HTML element and entityType, creates a new component instance, and bootstrap the iframe for embedding.
    *
    * @param {HTMLElement} an HTML Element where you need to embed. must be the same div element you will use in powerbi.embed.
    * @param {IBootstrapEmbedConfiguration} config: a bootstrap config.
    */
bootstrap(element: HTMLElement, config: IBootstrapEmbedConfiguration): embed.Embed;

Bootstrap-Einbettungskonfiguration

interface IBootstrapEmbedConfiguration {
  type: string;
  hostname?: string;
  embedUrl?: string;
  settings?: ISettings;
}

Konfigurationsparameter:

  • typ (erforderlich): Der Typ der Entität, die Sie einbetten möchten, z. B. "report", "Dashboard", "tile", "qna" oder "visual".
  • hostname: Wenn Sie noch keinen haben embedURL , können Sie einen Hostnamen angeben. Der Hostname ist der Domänenname der Einbettungs-URL. Wenn die Einbettungs-URL beispielsweise "https://app.powerbi.com/reportEmbed" lautet, lautet der Hostname "https://app.powerbi.com/". Wenn kein Hostname oder embedUrl angegeben wird, wird der Standardhostname verwendet https://app.powerbi.com/.
  • embedUrl: Dieselbe Einbettungs-URL, die Sie später für powerbi.embed bereitstellen. Wenn kein Hostname oder embedUrl angegeben wird, wird der Standardhostname verwendet https://app.powerbi.com/.
  • Einstellungen: Um den Bericht in ein mobiles Layout einzubetten oder ein Gebietsschema (Sprache) anzugeben, fügen Sie diese Parameter in die Anfangseinstellungen ein.

Bootstrapbeispiele

Die folgenden Beispiele bieten einen Verweis auf die Bootstrap-Methode beim Einbetten von Power BI-Entitäten.

Hinweis

Stellen Sie sicher, dass Sie aufrufen powerbi.embed , nachdem Sie die Einbettungsparameter erhalten haben.

So bootstrapieren Sie zum Einbetten eines Berichts:

powerbi.bootstrap(
        reportContainerDivElement,
        {
            type: 'report',
        }
    );

So bootstrapieren Sie zum Einbetten einer Dashboard:

powerbi.bootstrap(
        reportContainerDivElement,
        {
            type: 'dashboard',
            embedUrl: "https://app.powerbi.com/dashboardEmbed?dashboardId=06e3ba63-47ea-4579-b010-fdb5484b325a&config=eyJjbHVzdGVyVXJsIjoiaHR0cHM6mLndpbmRvd3MubmV0In0="
        }
    );

So bootstrapieren Sie zum Einbetten eines Berichts nur mit dem Hostnamen:

powerbi.bootstrap(
        reportContainerDivElement,
        {
            type: 'report',
            hostname: "https://app.powerbi.com"
        }
    );

So bootstrapieren Sie zum Einbetten eines Berichts mit mobilem Layout:

powerbi.bootstrap(
        reportContainerDivElement,
        {
            type: 'report',
            hostname: "https://app.powerbi.com",
            settings: {
	            layoutType: models.LayoutType.MobilePortrait
            }
        }
    );

Einschränkungen

  • Die folgenden bootstrappierten Entitäten können nicht geändert werden, ohne aufzurufen powerbi.reset(element).

    • Komponententyp (Bericht, Dashboard): Wenn Sie beispielsweise einen Bericht bootstrapieren, können Sie Berichte nur in dasselbe HTML-Element einbetten.
    • Layout (Desktop/Mobil)
    • Gebietsschema (Sprache)
  • Die powerbi.bootstrap-Methode wird beim Einbetten paginierter Berichte nicht unterstützt.

Nächste Schritte