Ext JS insertAdjacentHTML null при расширении Ext.tree.Panel - PullRequest
0 голосов
/ 20 марта 2012

У меня проблема при расширении Ext.tree.Panel в ext JS 4 У меня есть этот код:

Ext.define('Peps.tree', {
    extend: 'Ext.tree.Panel',
    alias: 'widget.pepstree',
});

Ext.create('Peps.tree', {
    renderTo:'selection_indicateur',
    id : 'pepstree',
    width:'500px',
    height:'500px'
});

Ext.create('Peps.tree', {
   renderTo:'selection_arborescence',
   id : 'pepstree2',
   width:'500px',
   height:'500px'
});

И когда я выполняю, я вижу только одну созданную древовидную панель и ошибку:

Uncaught TypeError: Cannot read property 'insertAdjacentHTML' of null

Этот код является минимальной версией реального, я надеюсь, что решение минимального кода решит все.

Что я делаю не так? Есть идеи?

Большое спасибо! :)

Ответы [ 2 ]

1 голос
/ 21 марта 2012

Когда я помещаю ваш код в jsfiddle, я не получаю ошибку, которую вы описываете http://jsfiddle.net/dbrin/VbTjx/embedded/result/

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

Похоже, что общий прототип разделяет корень - что здесь нехорошо.

0 голосов
/ 22 марта 2012

Итак, я нашел проблему, я не знаю почему, но ext js должен иметь идентификатор viewconfig, определенный при расширении древовидной панели.

Так что я добавил в свой метод initComponent () этот:

initComponent: function() {
    var id = Ext.id();
    Ext.apply(this, {
        viewConfig: {
            id: id + '-view'
        }
    }
}
...