ExtJS Grid - отображать несколько строк в одной строке - PullRequest
0 голосов
/ 22 октября 2018

У меня ниже json-данных в ExtJS store.Я использую Ext.grid.Panel для показа этого контента с именем и телефоном.

{"name": "Doris Ryan", "phone": "1-536-934-9500"}, {"name": "Nissim Hines", "phone": "1-937-975-0044"}, {"name": "Walter Gallegos", "phone": "863-4112"}, {"name ":" Miranda Boyd "," phone ":" 1-820-817-5049 "}, {" name ":" Sonya Booth "," phone ":" 468-0669 "}, {" name ":"Rose Steele "," phone ":" 1-581-774-8023 "},

Таким образом, я получаю Grid в формате ниже

Name              Phone
Doris Ryan        1-536-934-9500
Nissim Hines      1-937-975-0044
Walter Gallegos   863-4112
Miranda Boyd      1-820-817-5049

Но что я хочу, чтобы отображать содержимое в сетке, как описано ниже

Name              Phone            Name              Phone
Doris Ryan        1-536-934-9500   Nissim Hines      1-937-975-0044
Walter Gallegos   863-4112         Miranda Boyd      1-820-817-5049

Пользователь может редактировать номер телефона.Также поделитесь подробностями о том, как я буду обрабатывать обновления в сетке.

1 Ответ

0 голосов
/ 13 ноября 2018

Решение этой проблемы состоит в том, чтобы изменить способ сбора данных в модели, а затем изменить экспозицию через сетку.

ExtJS не обладает свойством автоматически реплицировать две строки записей водна строка.

Создайте такую ​​модель:

Ext.define('YourApp.model.yourFeature.Model', {
    extend: 'Ext.data.Model',
    fields: [{
        name: 'Phone1',
        type: 'string'
    }, {
        name: 'Name1',
        type: 'string'
    }, {
        name: 'Phone2',
        type: 'string'
    }, {
        name: 'Name2',
        type: 'string'
    }]
}); 

Определите ваши данные, как ваш вопрос:

var data = [{
    "name": "Doris Ryan",
    "phone": "1-536-934-9500"
}, {
    "name": "Nissim Hines",
    "phone": "1-937-975-0044"
}, {
    "name": "Walter Gallegos",
    "phone": "863-4112"
}, {
    "name": "Miranda Boyd",
    "phone": "1-820-817-5049"
}, {
    "name": "Sonya Booth",
    "phone": "468-0669"
}, {
    "name": "Rose Steele",
    "phone": "1-581-774-8023"
}]

Таким образом, вы сделаете что-то странное /даже логика изобилует вашей записью.

...