Pomiń nawigację

Ładowanie osadzonej zawartości w fazach w usłudze Power BI Embedded

Opublikowano: czwartek, 15 marca 2018

 

Ładowanie osadzonego artefaktu w usłudze Power BI Embedded odbywa się za pomocą wywołania embed, które zawiera osadzony obiekt konfiguracji oraz element <div> zawierający element iframe. Po wywołaniu osadzonego obiektu jest on ładowany w sposób widoczny dla użytkownika.

Aby ułatwić użytkowanie i udostępnić więcej narzędzi dla deweloperów, uzupełniliśmy ten przepływ o więcej wywołań w języku JavaScript, które dodają fazy do procesu osadzania:

  1. Wstępne ładowanie. Wywołanie powerbi.preload() korzysta z pamięci podręcznej przeglądarki, aby pobrać skrypty przed pokazaniem samego osadzonego obiektu. Może to być użyteczne w przypadku aplikacji, które hostują kilka osadzonych raportów. Po zakończeniu wstępnego ładowania jest wyzwalane zdarzenie ready.
  2. Ładowanie metadanych. Wywołanie powerbi.load() umożliwia pobranie informacji dotyczących osadzonego obiektu oraz dynamicznie zmienia ustawienia lub element <div> w tle, zanim obiekt zostanie wyświetlony użytkownikowi. Tej funkcji możesz na przykład użyć, aby pobrać strony, a następnie określić, którą stronę pokazać użytkownikowi. Alternatywnie możesz użyć funkcji get visuals, a następnie zdecydować, które wizualizacje pokazać lub ukryć. Jeśli użyjesz tej funkcji, konieczne jest wywołanie funkcji render(), aby pokazać osadzony obiekt. Po zakończeniu ładowania wyzwalane jest zdarzenie loaded.
  3. Renderowanie obiektu. Jeśli wdrożono funkcję powerbi.load(), ostatnim wywołaniem jest wywołanie render(). Umożliwia ono wykonanie ostatnich czynności potrzebnych do renderowania osadzonego obiektu i wyświetlenia go użytkownikowi. Po zakończeniu renderowania jest wyzwalane zdarzenie rendered.

Funkcje load i render muszą być używane wspólnie, ale funkcja preload jest od nich niezależna. Za pomocą funkcji embed możesz pokazać osadzony obiekt po wstępnym załadowaniu. Ponadto możesz użyć procedury z wszystkimi fazami, wywołując odpowiednio funkcje preload, load i render.

Related feedback