是否可以注入作为子 svg 元素的动态组件?
例如,我有一个主要组件 (CanvasComponent) ,它的模板是这样的
<svg width="400" height="400">
<ng-template appCanvasAnchor></ng-template>
</svg>
该 ng-template 是用于根据https://angular.io/guide/dynamic-component-loader动态注入组件的锚
动态(SquareComponent)有这个模板
<svg:rect width="100" height="100" style="fill:red" />
现在,由于动态组件添加到 DOM 的方式,当我的 Square 组件添加 DOM 时,它将包含在 div 元素中,如下所示。
<svg width="400" height="400">
<div app-square>
<rect width="100" height="100" style="fill:red" />
</div>
</svg>
理论上一切都很好,除了这是 SVG,因此我的正方形不会渲染,因为它有未知的标记(div)。这里的问题是,我能否以某种方式更改注入器使用的元素,以便它使用和 svg 知道像 g 这样的元素,而不是使用 div?