【发布时间】:2019-04-25 02:23:50
【问题描述】:
我正在使用ngx-bootstrap's modals,我想用其他一些属性更改CSS 类modal-dialog。
我的问题是:如何在Angular 中动态更改例如此类的属性?
我玩过ElementRef、TemplateRef 和Rendere2,但没有找到任何解决方案。
提前感谢您的帮助。
编辑 1:
我正在使用BsModalService 打开模式,所以我的模板如下所示:
<ng-template #defaultModalTemplate>
Content
</ng-template>
我这样打开对话框:
public openModal(): void {
this.modalRef = this.modalService.show(this.templateRef);
if (this.renderer && this.templateRef) { // trying to extract .modal-dialog here
}
}
变量templateRef定义如下:
@ViewChild('defaultModalTemplate') public templateRef?: TemplateRef<any>;
【问题讨论】:
-
为什么不
ngClass或ngStyle? -
ngClass或ngStyle -
我正在使用 ng-template 从打字稿打开模式,请参阅更新的答案。所以我不知道如何通过这种方法使用 ngClass 或 ngStyle :)
-
你试过原生访问元素'document.querySelector('selector').style.cssProperty = newVal'
-
@AmirFawzy 我已经使用文档使它工作了。就这么简单:document.getElementsByClassName('modal-dialog')。这给了我一个 HTMLCollectionOf
我可以在其中获取第一个元素,如果不是未定义的,则更改其属性
标签: javascript html css angular sass