#angular #angular-material
Вопрос:
я пытаюсь выбрать значение по умолчанию для выбранного типа ввода. выбранные мной параметры извлекаются из бэкэнда во время инициализации, код машинописного текста для этого выглядит следующим образом
ngOnInit(): void { this.subCategoryId = this.route.snapshot.paramMap.get('subcategoryId'); this.subCategoryService.getSubCategory(this.subCategoryId).pipe( catchError(err =gt; { this.router.navigate(['/login']); return EMPTY }) ).subscribe( data =gt; { if(data){ this.subCategoryName = data.subCategoryName; this.category= data.category; } }); this.categoryService.getCategories().subscribe(data =gt; { if(data){ this.categories = data; } }); }
категории-это параметры выбора, и код должен быть кодом редактирования, поэтому я хочу, чтобы ранее выбранная категория была выбрана по умолчанию, а HTML-код выглядит следующим образом
lt;mat-form-field appearance="outline"gt; lt;mat-labelgt;Categorylt;/mat-labelgt; lt;mat-select [(ngModel)]="category" name="category" required #name="ngModel"gt; lt;mat-option *ngFor="let category of categories" value="category"gt; {{ category.categoryName }} lt;/mat-optiongt; lt;/mat-selectgt; lt;mat-error *ngIf="name.invalid"gt;Empty Categorylt;/mat-errorgt; lt;/mat-form-fieldgt;
Я установил значение category на ранее выбранное значение, но оно по-прежнему показывает метку, а не значение по умолчанию, когда компонент инициализирован, даже если категория по-прежнему имеет значение и не является нулевым.