Разница между Ext.widget () и Ext.ComponentQuery.query ()? - PullRequest
2 голосов
/ 21 июля 2011

У меня есть компонент, который я создал, который расширяет Ext.window.Window, я дал ему псевдоним виджет.customereditor. После того, как я создал показанный экземпляр этого компонента, оба следующих фрагмента кода, похоже, получают ссылку на одно и то же:

Ext.ComponentQuery.query('customereditor')[0];
Ext.widget('customereditor');

Проблема заключается в том, что я пытаюсь выполнить метод close для возвращаемого объекта. Таким образом, следующее работает и закрывает окно:

Ext.ComponentQuery.query('customereditor')[0].close();

Пока это не работает:

Ext.widget('customereditor').close();

Мне интересно, в чем разница между двумя способами запроса?

1 Ответ

11 голосов
/ 21 июля 2011

После прочтения документации по API я нашел ответ. Оказывается, что Ext.widget фактически не запрашивает существующий экземпляр компонента в DOM, а вместо этого создает новые экземпляры компонентов по их xtype. Ext.ComponentQuery должен использоваться для поиска существующих экземпляров компонентов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...