2017-01-27 14 views
0

Использование Extjs 4.1 происходит прерывистая ошибка. Иногда это происходит, но в большинстве случаев это не так.
Это всегда происходит, когда я запускаю приложение, поэтому я нажимаю F5, и все возвращается в нормальное состояние.Extjs Прерывистая ошибка


Использование this reference для отладки ошибок, я заметил, что это происходит на линии 29590.

Сообщение об ошибке очень общее:

Uncaught TypeError: Cannot read property 'dom' of null
at constructor.finishRender (ext-all-debug-w-comments.js:29590)
at constructor.finishRenderItems (ext-all-debug-w-comments.js:39796)
at constructor.finishRender (ext-all-debug-w-comments.js:40889)
at constructor.finishRenderChildren (ext-all-debug-w-comments.js:44526)
at constructor.afterRender (ext-all-debug-w-comments.js:29331)
at constructor.callParent (ext-all-debug-w-comments.js:6194)
at constructor.afterRender (ext-all-debug-w-comments.js:36521)
at constructor.finishRender (ext-all-debug-w-comments.js:29625)
at constructor.finishRenderItems (ext-all-debug-w-comments.js:39796)
at constructor.finishRender (ext-all-debug-w-comments.js:40889)

Here is an error print

Что должно быть вызывая это?

ответ

1

Я бы сделал это комментарий, но он не подходит.

Существует множество причин, по которым я мог придумать. Большинство из них основаны на асинхронных вызовах. Вы определенно должны предоставить больше информации для ответа на вопрос.

Очевидно, me.el имеет значение null, которого не должно быть. Поэтому сначала вы должны найти, какой компонент вызывает проблему. Для этого вы должны линия 29590 на что-то обменять, как это:

try { 
    me.container = Ext.get(me.el.dom.parentNode); 
} catch(e) { 
    console.log(me.id); 
    console.log(me.itemId); 
    console.log(me.xtype); 
    ... 
    console.log(me); 
    throw e; 
} 

Это должно дать вам идею, которая будет затронута компонент (ы).

Затем покажите нам код этого компонента. Также проверьте, изменяете ли вы конфигурацию этого компонента вне компонента, например. из операции загрузки магазина или других асинхронных задач. Кроме того, вы должны посмотреть, загружаются ли переопределения для компонента и его предков из отдельных файлов JS - возможно, они иногда загружаются раньше, иногда после того, как был вызван финалRender, и исправить именно эту ошибку.

Это лишь некоторые из возможных причин.

+0

Благодарен за возвращение. Я добавил «try catch», как вы упомянули. Но ошибка больше не происходит. Как только я получу возвращение, я прокомментирую здесь. –