我正在努力应对这个问题,但似乎我失去了所有的想法。
在 Angular 组件中,我正在从外部资源加载 SVG,如下所示:
<object type="image/svg+xml" [data]="svgURL"></object>
加载的SVG对象包含像这个一样的项目:
<g onclick="onClickArea(evt,'3')></g>
当我单击SVG特定区域时,会出现错误提示:
0276a76ee45640eba80002580a126a38:158 Uncaught ReferenceError: onClickArea is not defined
at SVGGElement.onclick
如何在Angular组件中注册函数onClickArea并监听SVG上的单击事件?
我尝试将onClickArea注册在window对象上,但它不起作用。
(<any>window).onClickArea = function() {
console.log('test');
};
onclick结尾处缺少一个"。 - ConnorsFanonclick="top.onClickArea('hello', 3)",如此stackblitz所示。原始代码的stackblitz在这里,但必须在完整窗口模式下执行。 - ConnorsFan