ngClass in host property of component decorator does not work

后端 未结 3 1270
佛祖请我去吃肉
佛祖请我去吃肉 2021-02-07 17:44

I created the following simple example component that adds some attributes and listener to the component DOM element using the host property of the @Component decorator. In my c

3条回答
  •  轮回少年
    2021-02-07 18:25

    This works for me and it's pretty modular:

    import { Component, HostBinding, Input } from '@angular/core'
    
    type Directions = 'vertical' | 'horizontal'
    
    /**
     * A hairline.
     */
    @Component({
      selector: 'hairline',
      styleUrls: ['./hairline.component.scss'],
      template: '',
    })
    export class HairlineComponent {
      @Input() direction: Directions = 'horizontal'
      @Input() padding = false
    
      @HostBinding('class')
      get classes(): Record {
        return {
          [this.direction]: true,
          padding: this.padding,
        }
      }
    }
    
    

提交回复
热议问题