Не удается вызвать метод getWindowHeight неопределенного значения после сборки пакета sencha

Я разработал приложение, которое требует, чтобы какой-то контейнер рисовался на основе высоты и ширины устройства, поэтому я использовал

[Ext.Viewport.getWindowHeight()][1] &     
Ext.Viewport.getWindowWidth() 

в нескольких местах моего кода, и он работал нормально, пока я не сделал sencha app build package. Когда я попытался открыть упакованное приложение, я получил эту ошибку:

Uncaught TypeError: Cannot call method 'getWindowHeight' of undefined       app.js:1 (anonymous function)

Аналогичная проблема уже поднималась на форуме Sencha в прошлом, но ответа на нее нет: http://www.sencha.com/forum/showthread.php?240494-Call-method-getWindowHeight-of-undefined

Согласно документам Sencha: Ext.Viewport — это экземпляр, созданный при использовании Ext.setup, и если вы используете Ext.onReady, этот экземпляр Ext.Viewport не будет создан . Но в моем app.js я использую Ext.application(), а не Ext.setup или Ext.onReady,

по этой причине синглтон не создается? Если да, то как я могу это исправить?

Я использую Sencha Cmd версии 3.0.2.288 и Sencha Touch версии 2.1.1.


person ThinkFloyd    schedule 01.04.2013    source источник
comment
не уверен, почему вы думаете, что получите здесь разные ответы... на этом форуме работают те же люди, что и на sencha one..??   -  person Dawesi    schedule 01.04.2013
comment
Надежда — это хорошо, может быть, лучшая из вещей, и ни одна хорошая вещь не умирает.   -  person ThinkFloyd    schedule 01.04.2013


Ответы (1)


мое решение проблемы заключалось в использовании низкоуровневого javascript вместо фреймворка Sencha.

как описано здесь: http://www.howtocreate.co.uk/tutorials/javascript/browserwindow

в моем случае с помощью

window.innerHeight

было достаточно, так как мои пользователи не будут использовать IE.

person Guy Dubrovski    schedule 19.09.2014