Итак, у меня есть угловой 2, а именно 6 реактивной формы компонента,
этот компонент встроен в другой контейнерный компонент, который отображается с использованием углового наложения cdk.
- оверлей - это сервис оверлеев cdk, ничего странного.
- контейнерный компонент имеет реактивную форму
Контейнерный компонент
<form [FormGroup]="form">
<div class="column col-5 col-mx-auto">
<reactive-form-component formControlName="dateField"></reactive-form-component>
</form>
Реактивный сильфон
import { Component, OnInit, forwardRef, OnDestroy } from '@angular/core';
import * as moment from 'moment';
import {
NG_VALUE_ACCESSOR,
ControlValueAccessor,
FormGroup,
FormBuilder,
FormControl
} from '@angular/forms';
import { Subscription } from 'rxjs';
@Component({
selector: 'er-alt-reactive-form-component',
templateUrl: './alt-reactive-form-component.html',
styleUrls: ['./er-alt-reactive-form-component.css'],
providers: [
{
provide: NG_VALUE_ACCESSOR,
multi: true,
useClass: forwardRef(() => AltReactiveFormComponentComponent)
}
]
})
export class AltReactiveFormComponent implements ControlValueAccessor,
OnDestroy {
constructor( private _fb:FormBuilder) {
console.log('cons')
}
registerOnChange(onChange: any): void {
console.log('c', onChange);
console.log(this);
// this._onChange = (x) => console
this._onChange = onChange;
console.log(this._onChange === onChange);
}
registerOnTouched(onTouch: any): void {
console.log(this);
console.log('t', onTouch);
this._onTouch = onTouch;
console.log(this._onTouch === onTouch);
}
}
по касанию и по изменению являются частными
очень урезанная версия, но отображается та же ошибка
https://angular -1tzuhj.stackblitz.io --- предварительный просмотр stackblitz
https://stackblitz.com/edit/angular-1tzuhj
какие-нибудь идеи о том, что, черт возьми, происходит?