Есть ли возможность НЕ использовать тему формально?
Я хочу использовать попутный ветер для создания всего стиля и не хочу добавлять в свой код дополнительные библиотеки.
Вот простой пример того, что я придумал:
Что я сделал:
создал простой компонент, внутри которого находится форма с основным полем ввода. Кажется, что Angular компилируется нормально, но formly не отображает никаких полей. Это ошибка сError: [Formly Error] There is no type by the name of "input"
.
Я также не могу найти в документации примеров, в которых нет темы.
1 ответ
Формально предоставьте набор тем из коробки, такой материал, bootstrap.. но это не помешает вам создать свою собственную тему, единственное, что требуется, это определить тип настраиваемого поля, как описано в https://formly.dev/guide/custom-formly-field, чтобы резюмировать, вот шаги:
- Создайте настраиваемый тип поля с именем
input
:
import { Component } from '@angular/core';
import { FieldType } from '@ngx-formly/core';
@Component({
selector: 'formly-datetimepicker',
template: `
<input [formControl]="formControl"></input>
`,
})
export class InputFieldType extends FieldType {}
- определите свой тип поля с помощью
NgModule
декларация:
@NgModule({
declarations: [InputFieldType],
imports: [
....
FormlyModule.forRoot({
types: [
{ name: 'input', component: InputFieldType },
],
}),
],
})
export class AppModule {}
- установить тип на
type
в вашей конфигурации поля:
fields = [
{
key: 'name',
type: 'input',
},
]
все еще запутался, проверьте исходный код Formly UI https://github.com/ngx-formly/ngx-formly/tree/master/src/ui