Сообщение от khusamov
|
Инструкция requires гарантирует загрузку, перечисленных в ней классов до инстанцирования (наверное до создания экземпляров) данного класса.
|
Вот тут ошибка: requires гарантирует загрузку перечисленных зависимостей до *создания* данного класса. Т.е. сам класс не определён до тех пор, пока все зависимости не созданы.
Цитата:
|
Инструкция uses гарантирует загрузку, перечисленных в ней классов до вызова обработчиков Ext.onReady.
|
Это верно.
Цитата:
|
Почему тогда всюду используется requires?
И в коде самого ExtJS и в пользовательском коде.
|
Потому что uses фактически нужно только для того, чтобы разрывать круговые зависимости: если Foo нужен Bar, а Bar в свою очередь хочет Foo, то мы не можем включить их в requires с обеих сторон, загрузчик обидится. В таком случае Foo может включать Bar в requires, а Bar включает Foo в uses, и все довольны.