Я пытаюсь использовать ng-select и ngx-formly в Angular 11. Я следил за руководствами, предоставленными в официальной документации. https://egghead.io/lessons/angular-use-3rd-party-form-controls-with-angular-formly
Моя текущая реализация выдает следующие ошибки:
Было бы здорово, если бы мне помогли выяснить, ошибся ли я с кодом или пропустил какой-либо из шагов.
Ниже представлена моя реализация:
import { Component } from '@angular/core';
import { FormControl } from '@angular/forms';
import { FieldType } from '@ngx-formly/core';
@Component({
selector: 'formly-ng-select',
template: `<div class="mat-input-infix mat-form-field-infix">
<ng-select
[items]= "(to.options|formlySelectOptions:field|async)!"
[placeholder]="to.label || 'placeholder'"
[bindValue]="to.bindValue || 'value'"
[formControl]="formControl">
</ng-select>
</div>`
})
export class NgSelectFormlyComponent extends FieldType {
formControl!: FormControl;}
Я использую указанный выше настраиваемый шаблон в своем основном компоненте следующим образом:
fields: FormlyFieldConfig[] = [
{
key: 'nationId',
type: 'my-autocomplete',
// type: 'select',
templateOptions: {
label: 'Nation',
options: this.dataService.getNations()
}
}];
Я также добавил его в свой app.module следующим образом:
FormlyModule.forRoot({
types: [{
name: 'my-autocomplete',
component: NgSelectFormlyComponent,
// wrappers: ['form-field'],
}]
})]