Angular material 在select中超过了mat select最大调用堆栈大小,为800+;选择权
我正在使用mat select填充下拉列表中的对象数组。通过单击“全部”,可以选择和取消选择所有值。为此,我将清空与之关联的表单控件,并选择all,用所有ID填充表单控件。对于小数据,其工作正常。对于超过800的数据,当我在取消选择al时清空formcontrol时,它会抛出一个错误(超过最大调用堆栈大小) 在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.\uu tryOrUnsub(Subscriber.js:200) 在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next(Subscriber.js:130) ) component.htmlAngular material 在select中超过了mat select最大调用堆栈大小,为800+;选择权,angular-material,Angular Material,我正在使用mat select填充下拉列表中的对象数组。通过单击“全部”,可以选择和取消选择所有值。为此,我将清空与之关联的表单控件,并选择all,用所有ID填充表单控件。对于小数据,其工作正常。对于超过800的数据,当我在取消选择al时清空formcontrol时,它会抛出一个错误(超过最大调用堆栈大小) 在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.\uu tryOrU
<mat-select [formControl]="courseFormControl" multiple aria-label="Course Name"
[(ngModel)]="selectedCourseIds">
<mat-option *ngFor="let course of courseList"
(onSelectionChange)="onCourseSelect($event,courseFormControl)">
{{course.courseName}}
</mat-option>
</mat-select>
在取消所有帮助时抛出错误
core.js:15724错误范围错误:超过最大调用堆栈大小
在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.\uu tryOrUnsub(Subscriber.js:200)
在SafeSubscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.SafeSubscriber.next(Subscriber.js:130)
在Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.\u next(Subscriber.js:76)
在Subscriber.push../node_modules/rxjs/_esm5/internal/Subscriber.js.Subscriber.next(Subscriber.js:53)
在EventEmitter.push../node_modules/rxjs/_esm5/internal/Subject.js.Subject.next(Subject.js:47)
在EventEmitter.push../node_modules/@angular/core/fesm5/core.js.EventEmitter.emit(core.js:13499)
在MatOption.push../node\u modules/@angular/material/esm5/core.es5.js.MatOption.\u emitSelectionChangeEvent(core.es5.js:2803)
在MatOption.push../node_modules/@angular/material/esm5/core.es5.js.MatOption.deselect(core.es5.js:2595)欢迎来到Stackoverflow。请修复拼写错误,并通过区分描述和错误详细信息来设置描述格式,以使您的问题更具可读性,并增加获得好答案的机会。(注意:我试图解决拼写和格式问题,但这需要时间,因为有许多问题需要纠正,因此我请求您纠正这些问题。
onCourseSelect(event, form) {
if(event.isUserInput) {
let listCourseId = [];
//data contains the total list
data.map((val,ind) => {
if(val.selected === true){
listCourseId.push(val.courseId)
}
});
this.selectedCourseIds = listCourseId;
this.courseFormControl.setValue(listCourseId);
}