/
githubmirror
/
ionic-framework
Обзор
Документация
Войти
/
githubmirror
/
ionic-framework
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
packages/angular/src/directives/control-value-accessors/boolean-value-accessor.ts
29 строк
868 B
Liam DeBeasi
feat(angular): ship Ionic components as Angular standalone components (#28311)
10 окт 2023, 20:06
Не верифицирован
10 окт 2023, 20:06
57e2476
Код
Авторство
О чём код?
import { Directive, HostListener, ElementRef, Injector } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; import { ValueAccessor, setIonicClasses } from '@ionic/angular/common'; @Directive({ selector: 'ion-checkbox,ion-toggle', providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: BooleanValueAccessorDirective, multi: true, }, ], }) export class BooleanValueAccessorDirective extends ValueAccessor { constructor(injector: Injector, el: ElementRef) { super(injector, el); } writeValue(value: boolean): void { this.elementRef.nativeElement.checked = this.lastValue = value; setIonicClasses(this.elementRef); } @HostListener('ionChange', ['$event.target']) _handleIonChange(el: HTMLIonCheckboxElement | HTMLIonToggleElement): void { this.handleValueChange(el, el.checked); } }