https://angular.carbondesignsystem.com/?path=/story/components-checkbox—basic

组件及属性

  • Checkbox

    • Input
      • size: sm | md = md
      • nested
      • inline = false
      • disabled = false
      • skeleton = false
      • hideLabel = false
      • name
      • id = checkbox-${Checkbox.checkboxCount}
      • required
      • value
      • aria-label,无障碍相关
      • ariaLabel
      • aria-labelledby
      • indeterminate
      • checked
    • Output
      • check
      • change
      • checkedChange
      • indeterminateChange
    • HostListener
      • focusout

        Tips

        ControlValueAccessor

        引用参考文章中的一句话:“ControlValueAccessor 桥接原生表单控件和 formControl 指令,并同步两者的值。”
        就是很让你像用 Angular 表单组件那样使用自己封装的组件。
        参考
  • https://hijiangtao.github.io/2020/01/30/Angular-ControlValueAccessor-Introduction-and-Example/

  • https://angular.io/api/forms/ControlValueAccessor

    ChangeDetectorRef

    当使用 OnPush 策略时,如果输入属性没有变化,组件的变化检测将会被跳过,这种情况可以调用 markForCheck 方法手动检测。
    ChangeDetectorRef 是组件变化检测器的应用,声明如下
    1. abstract class ChangeDetectorRef {
    2. abstract markForCheck(): void
    3. abstract detach(): void
    4. abstract detectChanges(): void
    5. abstract checkNoChanges(): void
    6. abstract reattach(): void
    7. }
    ChangeDetectorRef 类的使用方式,后面可以单独写篇文章。现在我们只要知道它在这里用来触发手动检测。

参考