在我的 ng2 应用程序中,我使用了一个未公开其 HTML 元素的外部库。
我将其用作:
<custom-component>
<div custom-title> Title </div>
<div custom-content> Content </div>
</custom-component>
现在,当它以 HTML 呈现时,它被添加为:
<custom-component>
<div class='customComponentWrapper'>
<div class='content'>
<div custom-title> Title </div>
<div custom-content> Content </div>
</div>
</div>
</custom-component>
为了动态更改位置,我创建了一个本地模板引用变量。
<custom-component>
<div #customComponent custom-title> Title </div>
<div custom-content> Content </div>
</custom-component>
并将其宽度更改为:
@ViewChild('customComponent') customComponent: ElementRef;
const elem = this.customComponent.nativeElement.parentElement.parentElement.parentElement;
elem.style.marginRight = width + 'px';
现在 A/c 到angular.io文档
ElementRef
将被弃用。我无法找到任何其他方式来做到这一点。有没有其他方法可以达到同样的效果?
我还有一些关于 SO 的链接。但没有找到解决办法。