Как мне реализовать конвертер свойств для поставщиков значений в форме данных RAD - PullRequest
0 голосов
/ 27 июня 2019

У меня есть форма данных RAD в моем приложении на языке nativescript.Форма имеет два поля для типа идентификатора и идентификационного номера.Поле типа идентификатора - это средство выбора, которое отображает данные из серверной службы.Мой исходный объект выглядит так:

 this.mySourceObj = new User("Passport Id", "A2653JHSJ12");

Я хочу, чтобы мой исходный объект сохранял значение типа идентификатора в виде строки.Поэтому я изменил редакторы, используя разметку HTML, например:

 <TKEntityProperty
        tkDataFormProperty
        name="idType"
        displayName="Id Type"
        index="1"
        [valuesProvider]="idTypesProvider"
      >
        <TKPropertyEditor
          tkEntityPropertyEditor
          type="Picker"
        ></TKPropertyEditor>
      </TKEntityProperty>

, и в моем файле ts я регистрирую свои значения провайдеров, например:

  this.idTypesProvider = {
            key: "id",
            label: "name",
            items: [...idTypesArr]
        };

С этим набором мой редактор выбора заполняетсяданные, но когда я выбираю один элемент, он не отражается в моем коде, поэтому во время отправки формы поле имеет значение null.

Я хотел бы получить значение выбранного элемента в виде законченного объекта, т.е.(id, name, ...).

Я пытался использовать свойство commit для получения подтвержденного значения, но оно регистрирует индексное значение элемента.

        if (args.propertyName === "idType") {
            const selectedIdType = this.mySourceObj.idType;
            console.log(`the committed id type is :`, selectedIdType);
        } else {
            console.log("No property selected");
        }

Iтакже наткнулся на свойство convert, которое привязано в dom вроде:

 <TKEntityProperty
        tkDataFormProperty
        name="idType"
        displayName="Id Type"
        index="1"
        [converter]="valsConverter"
        [valuesProvider]="idTypesProvider"
      >
        <TKPropertyEditor
          tkEntityPropertyEditor
          type="Picker"
        ></TKPropertyEditor>
      </TKEntityProperty>

Но я не знаю, как реализовать «конвертер».Любая помощь очень ценится.

Мне нужна ситуация, когда, когда пользователь выбирает тип идентификатора, моя консоль может регистрировать полный объект выбранного элемента.

...