0

我开发自定义视觉效果。
我在元素上添加了点击事件,我想手动调用更新更新方法(刷新)
当我使用 power bi online 进行开发
时它工作但打包时它不起作用。

4

1 回答 1

0

您可以在自定义视觉对象中使用 jQuery 来做到这一点。简单来说,请参见下面的代码。在此示例中,我创建了一个元素,然后您可以创建一个 jQuery 'on' 部分来调用更新方法。

private $root: JQuery;
public update(options: VisualUpdateOptions) {
  this.$root = $("#sandbox-host");   // Main container inside iframe of visual
  this.$root.append(`<div id="myElement" class="element"></div>`);

  $("#myElement").on("click", () => {
      this.update(this.options);
    });
}

确保将 => 运算符与“click”一起使用,因为它将为您提供 Class 的“this”访问权限。

其次,不要忘记在 package.json 的依赖项中添加 jQuery 库。添加它们并运行 npm install。

"jquery": "^3.2.1",
"@types/jquery": "^2.0.41",

完成后,您可以在您的 visual.ts 和其他文件中使用 jQuery。

注意 - 您还可以使用 if 条件在 update() 方法中添加检查,这样您只需在手动调用 update() 方法时执行所需的代码。

于 2019-05-21T07:51:52.743 回答