значение перечисления в форме редактирования не установлено - PullRequest
0 голосов
/ 12 июля 2020

У меня есть сетка с некоторыми данными (в примере stackblitz одна строка). Модель данных - это документ, который имеет свойства приоритета и валюты. Я реализую эти свойства с помощью перечислений. Затем я конвертирую эти перечисления в массивы, чтобы использовать их в качестве источника данных для компонентов devextreme selectbox.

При нажатии на строку кнопка редактирования меняет ее состояние на «включено». При нажатии на кнопку редактирования отображается всплывающее окно с формой. Валюта в поле выбора установлена ​​правильно, а приоритет - нет. И я действительно не понимаю, почему?

Пример stackblitz можно найти здесь: https://stackblitz.com/edit/angular-dxpopup-3y6h4h

1 Ответ

1 голос
/ 12 июля 2020

Object.entries () предоставляет ключи и значения в виде строк. Итак, convertEnumToArray должен привести ключ к числу, используя + следующим образом:

 convertEnumToArray(enumName: any, pipe: any) {
    return Object.entries(enumName).filter(e => !isNaN(e[0] as any))
          .map(e => ({ id: +e[0], value: new pipe()
          .transform(enumName[e[1].toString()]) }));
 }

Вот StackBlitz

...