【发布时间】:2019-09-15 17:17:35
【问题描述】:
我开发自定义视觉效果。
我在元素上添加点击事件
我想手动调用 update 更新方法(刷新)
当我使用 power bi online 进行开发时,它起作用了
但是打包时它不起作用。
【问题讨论】:
标签: powerbi powerbi-custom-visuals
我开发自定义视觉效果。
我在元素上添加点击事件
我想手动调用 update 更新方法(刷新)
当我使用 power bi online 进行开发时,它起作用了
但是打包时它不起作用。
【问题讨论】:
标签: powerbi powerbi-custom-visuals
您可以在自定义视觉对象中使用 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() 方法时执行所需的代码。
【讨论】: