Angular2 渲染器 setElementClass isAdd 选项不起作用

标签 angular

为什么这不起作用,如文档中所述?

renderer.setElementClass(el, 'class1', false); // replace class
renderer.setElementClass(el, 'class2', true); // add a class

这导致元素只有 class2 而不是两者。

引用 Angular2 renderer docs

最佳答案

只需提及 Renderer 现在已被弃用,并已被 Renderer2 取代。在 Renderer2 类中,有两个方法替代了已弃用的渲染器的 setElementClass

  • 添加一个类:

    renderer.addClass(this.elementRef.nativeElement, 'popup');

  • 删除类:

    renderer.removeClass(this.elementRef.nativeElement, 'popup');

有关详细信息,请参阅:https://angular.io/api/core/Renderer2

有关教程形式的代码示例,请参阅:https://www.digitalocean.com/community/tutorials/angular-using-renderer2 特别是“addClass/removeClass”部分

关于Angular2 渲染器 setElementClass isAdd 选项不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42858098/

相关文章:

javascript - Angular 2 和 google map API 的 typescript 逻辑问题

angular - rxjs - Angular : How to wait for an Observable function, 调用另一个返回 Observable 的函数?

angular - .maps 和导入 'rxjs/add/operator/map' 出现问题;

html - 如何获得:href ="@{}" instead of href ="" in links spring boot/angular app

angular - 您正在公开分享您的 App Secret。不要在浏览器中暴露 App Secret : error while calling getStream API from Angular

Angular 4 Jasmine Actual 不是函数

java - 包名称为 'com.google.android.gms.license' 的多个库

javascript - 表单验证失败后如何显示模式?

javascript - 使用 Karma 和 Jasmin 进行 Angular2 单元测试 SpyOn

angular - 无法使用 Angular 显示 RTSP 流