在Angular中,@HostBinding()装饰器允许我们将属性绑定到宿主元素上。这意味着我们可以从HTML模板中读取宿主元素上添加的类。
下面是一个示例,展示了如何使用@HostBinding()装饰器从HTML中读取添加的类:
import { Directive, HostBinding } from '@angular/core';
@Directive({
selector: '[appHighlight]'
})
export class HighlightDirective {
@HostBinding('class')
highlight = '';
constructor() { }
}
Highlighted Div
在这个示例中,我们给宿主元素添加了"red"和"bold"两个类名。
import { Component } from '@angular/core';
import { HighlightDirective } from './highlight.directive';
@Component({
selector: 'app-root',
template: `
Highlighted Div
`,
styleUrls: ['./app.component.css']
})
export class AppComponent {
constructor() { }
}
这就是使用@HostBinding()装饰器从HTML中读取添加的类的解决方法。通过将属性绑定到宿主元素上,我们可以轻松地获取宿主元素上添加的类。