【发布时间】:2020-05-05 08:42:18
【问题描述】:
您好,我正在开发应用程序,我想在其中使用角度路由器,并且在导航方法之后从 DOM 获取一些元素并更改它们的属性。我的问题是,当我尝试立即获取这些元素时,我收到“无法读取属性 'getElementById' of null”错误。我可以以某种方式等到页面加载吗?当客户端在正确的 url 上时,代码可以正常工作。
这是我的简化代码:
this.router.navigate(['/' + line.building + '/' + line.level], {relativeTo: this.route});
const svg = document.getElementsByTagName('svg').namedItem(line.building + line.level +'-svg');
const rect = svg.getElementById(line.name);
rect.setAttribute('fill', '#05ff00');
【问题讨论】:
标签: angular typescript angular-router dom-manipulation