Я создаю таблицу, где каждая ячейка является входной, и каждая строка может быть сохранена отдельно.
Это выглядит так: Я использую в этом случае mat-table и ngrx Entity Adapter. Я связываюсь
<table mat-table [dataSource]="translations$ | async" class="mat-elevation-z8">
, и каждый объект в массиве переводов выглядит примерно так:
{key:"testKey", value: "testValue1"}
Я хотел бы иметь возможность редактировать каждый ключ и каждое значение, поместите туда валидацию и отправьте его в бэкэнд. Также было бы неплохо указать ячейки, которые изменили свои значения, которые еще не были отправлены в BE.
Чтобы установить новое значение и состояние обновления, я попытался сделать следующее:
<input
matInput
[ngModel]="translation.key"
(ngModelChange)="onChange($event)"
required
/>
Что еще Добавление строки означает, что будет добавлена новая строка с пустыми входами. Что я сделал таким образом:
on(DashboardActions.addTranslation, (state, action) =>
translationsAdapter.addOne(
{ key: '', value: '' },
{
...state
}
)
)
Есть ли какой-нибудь простой способ смешать Entity Adapter ngrx с formGroups (или ngModel)? Какой подход я должен использовать в этом случае?
Я пытался с ngrx-form, это нормально, но это немного устарело для использования с современным NGRX и может быть слишком сложным для моего случая.