Optimizar la experiencia de inserción

Completado

Puede usar dos técnicas para optimizar la experiencia de inserción: el arranque y la inserción por fases.

Uso de bootstrap

Logre un rendimiento de inserción más rápido mediante la función powerbi.bootstrap(embedContainer, config). Esta función prepara e inicializa el elemento iframe antes de establecer todos los parámetros de configuración necesarios. Se debe llamar a la función powerbi.embed(embedContainer, config) una vez que se hayan establecido todos los parámetros de configuración.

En el código siguiente se muestra cómo preparar e inicializar el elemento iframe para un informe de Power BI.

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

Considere la posibilidad de usar el arranque cuando se cargue por primera vez la página web de la aplicación. Mientras esto sucede, las llamadas del lado del servidor pueden recuperar los detalles del contenido y el token de acceso de Power BI. Cuando se completen las llamadas del lado del servidor, inserte el contenido de Power BI.

Diagrama del flujo de arranque descrito en el párrafo anterior.

Nota

No es posible usar la función de arranque al insertar informes paginados.

Para más información, consulte Uso del arranque para mejorar el rendimiento.

Uso de la inserción por fases

Cuando el contenido de Power BI para insertar está en una página diferente de la aplicación, hay una técnica alternativa para acelerar la inserción y mejorar la experiencia del usuario.

Nota

Para realizar la inserción en la misma página, se recomienda la técnica de arranque (descrita anteriormente) porque es más rápida.

Use la función powerbi.preload(config) para introducir un objeto de configuración mínima que solo comprenda las propiedades type y embedUrl. El valor embedUrl debe ser una dirección URL base, lo que significa que no necesita un id. de artefacto específico. La precarga ayuda a acelerar la inserción. Para ello, se descargan los scripts necesarios para insertar contenido de Power BI antes de que el usuario navegue a la página.

// Building the configuration object
let config = {
    type: 'report',
    embedUrl: 'https://app.powerbi.com/reportEmbed',
};

let element = powerbi.preload(config);

El evento preloaded se desencadena cuando se completa la precarga.

element.on('preloaded', function () {
    ...
});

Use la función powerbi.load(embedContainer, config) para cambiar dinámicamente la configuración del elemento div antes de que se muestre el contenido. Por ejemplo, puede usar esta función para obtener información sobre las páginas del informe y, a continuación, determinar qué página se mostrará al usuario. Si usa esta función, también debe llamar a la función powerbi.render() para mostrar el contenido insertado.

Cuando las combina, las funciones load y render logran el mismo resultado que la función embed.

El diagrama de la función de inserción se puede lograr en fases mediante las funciones de carga y representación.

Aunque debe usar las funciones load y render juntas, preload es una función independiente de ellas. Puede usar la función embed para mostrar el objeto insertado después de la precarga. También puede usar el procedimiento por fases completas llamando a preload, load y render en ese orden.

Para obtener más información, consulte Uso de la inserción por fases.

Para ver otros artículos de optimización, consulte Procedimientos recomendados para un rendimiento más rápido en análisis integrado de Power BI.