Во время разработки я запускаю свое приложение с помощью «sencha app watch», и у меня не было ошибок. Но когда я создаю свое приложение с помощью «тестирования сборки приложений sencha», я получил ошибку для разных стандартных компонентов: для combobox, hiddenfield, fieldcontainer. Я решил это, добавив имена классов компонентов в раздел «require». Мой вопрос: почему я должен делать этот трюк? И что не так с этими полями? Потому что для текстового поля у меня не было никаких ошибок. Я использую ext js 6.2.0. gpl versionНераспознанное имя класса/псевдоним widget.combobox (hiddenfield, fieldcontainer, ...)
ответ
Требуется: Загружает все классы по заданным именам и всем их прямым зависимостям.
Эта ошибка очень распространена, и обычно это происходит из-за того, что требуемый компонент Ext не загружен или одна из его прямых зависимостей не загружается перед использованием компонента.
В развитии создана, мы имеем установку Ext в нашем рабочем пространстве
обычно делает его легко вытащить зависимости требуется.В случае производства или тестирования он не может загрузить файл, или загрузить одну из своих прямых зависимостей, вызвав эту проблему.
В основном эти зависимости динамически загружаются.
Это всегда лучшая практика, чтобы убедиться, что вы используете требуется для любого компонента, который вы используете.
Это означает, что нет ничего плохого в том, что какой-либо из компонентов вызывает только некоторую проблему с загрузкой из-за того, что они связаны внутри.
Когда вы используете версию ExtJS для разработки, она основана на файле app-all.js
, который содержит большинство, если не все, классы ExtJS и имеет размер 2 МБ (9 МБ незавершенных). Поэтому, как только этот файл загружен, все они полностью доступны.
При компиляции версии ExtJS Sencha Cmd строит дерево зависимостей требуемых классов, чтобы свести размер полученного app.js
к минимуму (в моем приложении оно уменьшено на 1,1 МБ).Для этого дерева зависимостей, он начинается в файле app.js
и рассматривает определения в классах:
и в контроллерах:
но не в другом месте, например:
Ext.create()
(которые могут быть разбросаны вокруг вашего кода, если вы строите ваши компоненты динамически)xtype
в comp оленье дерево.
- 1. Использование ExtJS fieldContainer
- 2. Используйте другое имя в asp: hiddenfield
- 3. ExtJs 5.1.0 - Нераспознанное имя класса/псевдоним: widget.cartesian
- 4. Нераспознанное поле: имя пользователяCanonical для symfony2 FosUserbundle
- 5. ExtJS 4.0.7 fieldcontainer vbox layout
- 6. Изображение нераспознанное ios
- 7. ExtJS fieldcontainer фокус событие не стрельбы
- 8. ExtJS4.2 - Поля внутри FieldContainer всегда отмечены грязными.
- 9. ASP.NET HiddenField Значение Значение
- 10. HiddenField control maintenance viewstate
- 11. Hiddenfield теряет значение
- 12. ClientScriptManager.RegisterForEventValidation с HiddenField
- 13. HiddenField не является WebControl?
- 14. Доступ к HiddenField внутри datalist
- 15. com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Нераспознанное поле «g»
- 16. UnrecognizedPropertyException Нераспознанное поле "resourceType"?
- 17. Нераспознанное приложение раздела конфигурацииЗастройки
- 18. monit: нераспознанное обслуживание
- 19. Значение привязки от HiddenField asp.net
- 20. JQuery Tab Set Hiddenfield Value
- 21. HiddenField Value Lost on Postback
- 22. ASP.NET undefined from hiddenfield value
- 23. Почему я должен использовать HiddenField?
- 24. Прикрепить Hiddenfield к HTML-разметке
- 25. Эквивалентность asp: HiddenField для GridView
- 26. Bind a HiddenField в gridview
- 27. Проблема привязки к GridView HiddenField
- 28. HiddenField возвращается как пустой код
- 29. Невозможно отбросить HiddenField до I.Convertible
- 30. JQuery toolTip получить от HiddenField?