Ext js 6.7 TreeList загружает данные бесконечно из удаленного хранилища - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь заполнить древовидный список удаленными данными через прокси ajax, но этот древовидный список показывает только первый уровень и пытается перезагрузить подуровни, даже если ответ json содержит полную древовидную структуру. Ссылка Fiddle: https://fiddle.sencha.com/#view / editor & fiddle / 33u9

Когда я пытаюсь развернуть узел 'SUB a' (или установить расширенное свойство в значение true), магазин пытается перезагрузить узел.

Почему древовидная структура из ответа json не соблюдается?

Заранее спасибо.

Внутренний ответ выглядит так:

{
  "data": {
    "root": [
      {
        "leaf": true,
        "text": "Server"
      },
      {
        "leaf": true,
        "text": "Storage"
      },
      {
        "text": "SUB a"
        "children": [
          {
            "leaf": true,
            "text": "Modul A - 1"
          },
          {
            "leaf": true,
            "text": "Modul A - 2"
          }
        ],
      },
      {
        "leaf": true,
        "text": "Modul B"
      }
    ]
  },
  "success": true
}

Используемая конфигурация считывателя:

reader: {
  type: 'json',
  rootProperty: 'data.root',
  successProperty: 'data.success',
},

1 Ответ

0 голосов
/ 02 марта 2020

После игры я использую следующий обходной путь:

getNavigation: function() {
var me = this,
  tree = me.getView().down('navigationtree'),
  store = tree.getStore(),
  node = store.getRoot();

Ext.Ajax.request({
  url: '/getnav',
  method: 'POST',

  success: function(response) {
    var obj = Ext.decode(response.responseText),
      childs = obj.data.root;

    tree.suspendEvents();
    node.removeAll();
    childs.forEach(function(item) {
      node.appendChild(item);
    });
    tree.resumeEvents();
  },
  failure: function(response) {
    //debugger;
    console.log('server-side failure with status code ' + response.status);
  }
}).then(function() {
    //debugger;
  }
);

}

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

...