Я пытаюсь открыть материал DatePicker, когда компонент загружен с использованием элемента id (#). Когда я пытаюсь использовать ngAfterViewInit, он всегда возвращает 'cannot use 'open' to undefined'. Это работает, когда я щелкаю по значку календаря или даже добавляю свойство click к кнопке с функцией open().
'cannot use 'open' to undefined'
open()
Я создал простую страницу stackblitz здесь https://stackblitz.com/edit/angular-7dkbsw?file=src%2Fapp%2Fapp.component.html, когда вы можете проверить, что я хочу acheive.
picker ID определяется как элемент материала, который должен открываться модально с календарем.
picker
Вы выбрали неверный тип для выбора, он должен быть MatDatepicker не ElementRef
MatDatepicker
ElementRef
export class AppComponent { @ViewChild('picker',{static:false}) picker: MatDatepicker; ngAfterViewInit(){ this.picker.open(); } }