Привязка значений к нескольким меткам в виджете списка; Использование динамических свойств страницы - PullRequest
0 голосов
/ 03 апреля 2019

Фон:

У меня есть объект JSON, и я хотел бы связать его значения с виджетом списка с помощью свойства динамической страницы.Я пытаюсь установить динамические свойства страницы "value" в качестве объекта JSON, однако я не уверен, как получить доступ к элементам этого JSON Approver.

Установка свойства страницы "Value"

Как я понимаю, свойство динамической страницы должно быть в состоянии принять объект JSON.В приведенном ниже примере я делаю именно это.

var jsonObject = {
    "Approvers": [{
        "Approver_Name": "John Doe",
        "Approver_Email": "jdoe@email.com,",
        "Approver_Status": "Pending"
    }, {
        "Approver_Name": "Jane Doe",
        "Approver_Email": "jdoe2@email.com,",
        "Approver_Status": "Pending"
    }]
}
    app.pages.editSubmission.properties.Approver_Details = jsonObject;

Доступ к значениям в свойстве страницы

Я прочитал документацию по свойствам и привязкам.https://developers.google.com/appmaker/properties. Я пробовал стандартный метод привязки источника данных виджета списка к свойству динамической страницы.(Я все еще не уверен, как получить доступ к элементам Approvers.)

К сожалению, документация не охватывает динамические свойства.(Или я пропустил это.) Если кто-то может указать мне на какую-то документацию или другой пост переполнения стека, посвященный этой теме, это будет очень уместно.

1 Ответ

1 голос
/ 03 апреля 2019

A Виджет списка ожидает, что его источником данных будет массив элементов, но вы предоставляете объект json; следовательно, это не работает. Вместо использования dynamic property используйте свойство <List>String. Таким образом, вы можете сделать что-то вроде этого:

var jsonObject = {
    "Approvers": [{
        "Approver_Name": "John Doe",
        "Approver_Email": "jdoe@email.com",
        "Approver_Status": "Pending"
    }, {
        "Approver_Name": "Jane Doe",
        "Approver_Email": "jdoe2@email.com",
        "Approver_Status": "Pending"
    }]
}
app.pages.editSubmission.properties.Approver_Details = jsonObject.Approvers;

Затем, при привязке значений к вашему списку, вы можете использовать три разные метки внутри строки списка, и каждая метка должна быть связана с соответствующим значением:

@datasource.item["Approver_Name"]
@datasource.item["Approver_Email"]
@datasource.item["Approver_Status"]
...