在组件模板中,我正在使用 ElementRef 选择一个 svg 元素。它工作正常,但是当我构建应用程序并打开它时 elementRef 为空。
@Component({
selector: 'app-svg',
template: `<div id="root">
<object [data]='trustedUrl' type="image/svg+xml" height="450" width="650" #dataSvg></object>
</div>`,
styleUrls: ['./svg.component.css']
})
constructor(private sanitizer: DomSanitizer, private elRef: ElementRef) {
}
elementRef 目标
@ViewChild('dataSvg') dataSvg: ElementRef;
将其传递给 elementRef 变量
ngOnInit() {
this.elementRef = this.elRef.nativeElement.querySelector('#dataSvg');
}
加载内容后,我选择 svg :
ngAfterContentInit() {
const elementRef = this.elementRef;
// when content is loaded...
elementRef.addEventListener('load', function (event) {
// ...retrieve svg element
elementRef.querySelector('svg')为空
当我运行“ npm run build ”并转到 dist/index.html 时,contentDocument > 为 null: