在 React JS 中嵌入 Power BI 报表以获取报表实例

Embed a Power BI report in React JS to get report instance

我正在尝试在 React JS 中嵌入一个 Power BI 报告,我想嵌入该报告并让报告实例进一步使用它。我正在使用 Power BI 反应扩展来反应以嵌入报告,但我不断收到无法读取 属性 'embed' of undefined.

的错误

Index.js

import { powerbi, models, embed } from "powerbi-client";
import React, { useState, useEffect } from "react";
import ReactDOM from "react-dom";

function ReportBI() {
  let token ="abcExample";
  let embedUrlBi = "https://app.powerbi.com/reportEmbed";
  let reportId = "ReportID";
  
  const embedConfig = {
    type: "report",
    id: reportId,
    embedUrl: embedUrlBi,
    accessToken: token,
    tokenType: models.TokenType.Embed
  };

  function test() {
    var embedContainer = document.getElementById("container");
    var report = powerbi.embed(embedContainer, embedConfig);
    console.log(report);
  }
  useEffect(() => {
    test();
  });
   
  return (
    <>
      <div id="container"></div>
      
    </>
  );
}

const element = <ReportBI />;

ReactDOM.render(element, document.getElementById("root"));

Index.Html

<div id="root">
      <div id="container"></div>
    </div>

我试图在嵌入报告实例后获取报告实例以用它做其他事情。我可以这样做吗?

您可以尝试使用新的 powerbi-client-react 库在 React 应用程序中嵌入 PowerBI 实体

getEmbeddedComponent”属性 returns 嵌入式 PowerBI 报表实例