本文涵蓋在應用程式中內嵌儀錶板的步驟。 若要深入瞭解儀錶板,請參閱 Power BI 設計工具的儀錶板簡介。
提示
請嘗試在 Power BI Embedded Analytics 遊樂場的 探索我們的 API 一節中內嵌儀錶板或實驗用戶端 API。
如何內嵌儀錶板
當您在應用程式中內嵌 Power BI 內容時,您可以使用組態物件來定義您要內嵌的內容,以及指定內容的設定。 然後將該對象傳遞至 API。
當您內嵌儀錶板時,請使用類型為 IDashboardLoadConfiguration的組態物件:
interface IDashboardLoadConfiguration {
accessToken: string;
embedUrl?: string;
id: string;
pageView?: models.PageView
tokenType?: models.TokenType;
type: string;
}
此介面包含下列屬性:
accessToken- 可讓您存取您要內嵌的 Power BI 數據令牌。 若要深入瞭解存取令牌,請參閱 瞭解不同的內嵌解決方案。embedUrl- 您要內嵌之儀錶板的 URL。 此 URL 會成為包含內嵌儀錶板的 HTMLiframe項目來源。 具體來說,API 會將URL指派給iframe的src屬性。 您可以使用 儀錶板 API 來取得此 URL。 兩個範例包括:id- 您要內嵌之儀錶板的識別碼。 使用 儀錶板 API 來取得此標識碼。 例如:pageView- API 用於內嵌儀錶板的格式。 可能性包括:-
fitToWidth- 內嵌儀錶板的寬度符合包含儀錶板之div項目的寬度。 -
oneColumn- 內嵌儀錶板會出現在一個數據行中。 -
actualSize- API 會以完整大小顯示內嵌儀錶板。
-
tokenType- 可讓您存取所內嵌之 Power BI 數據的令牌類型。- 使用
models.TokenType.Aad為組織內嵌 (用戶擁有數據)。 - 使用
models.TokenType.Embed為您的客戶內嵌 (應用程式擁有數據)。
如需詳細資訊,請參閱 瞭解不同的內嵌解決方案。
- 使用
type- 您要內嵌的內容種類。 針對儀錶板使用'dashboard'。
例
下列範例示範如何內嵌單一儀錶板:
// Set up the configuration object that determines what to embed and how to embed it.
let embedConfiguration = {
accessToken: anAccessToken,
embedUrl: anEmbedUrl,
id: aDashboardId,
pageView: 'fitToWidth',
tokenType: aTokenType,
type: 'dashboard'
};
// Get a reference to the HTML element that contains the embedded dashboard.
let dashboardContainer = $('#dashboardContainer')[0];
// Embed the dashboard.
let dashboard = powerbi.embed(dashboardContainer, embedConfiguration);
考慮和限制
不支援在 EM SKU 上內嵌儀錶板
當您內嵌內容時,您的應用程式會在
div項目中顯示內容。 如果您在內嵌儀錶板時,使用pageView值actualSize:- 如果儀錶板比
div元素寬,API 會使用div項目的寬度做為內嵌儀錶板的寬度。 - 如果儀錶板比
div元素窄,API 會以內嵌背景填滿未使用的空間。 根據預設,該背景為白色,但您可以將它設定為透明。 在此情況下,div項目的樣式會顯示在未使用的空間中。
- 如果儀錶板比