我正在尝试自动从< mat-autocomplete ...>中的选项集中选择第一个值.
export class ExampleComponent implements OnInit,AfterViewInit { @ViewChildren('auto') matAutocomplete: QueryList<any>; constructor(private cdr: ChangeDetectorRef) { } ngAfterViewInit() { this.foundItemsList.changes.subscribe(options => { // ---> This simply works! setTimeout(() => this.matAutocomplete.first._keyManager.setFirstItemActive(),0); // ---> This doesn't works?! No error shown,it just seems that the above function isn't called at all. this.matAutocomplete.first._keyManager.setFirstItemActive() this.cdr.detectChanges(); }); }
https://github.com/angular/material2/blob/master/src/lib/autocomplete/autocomplete.ts
AFAIK,detectChanges做的是检查当前组件及其所有子组件的变化检测器,对吗?但似乎它在上面的场景中不起作用.
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。