0

我开发了一个应用程序,它需要根据设备的高度和宽度绘制一些容器,所以我使用了

[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 docs:Ext.Viewport 是使用 Ext.setup 时创建的实例如果使用 Ext.onReady,则不会创建 Ext.Viewport 的此实例。但在我的 app.js 中,我使用的是Ext.application()notExt.setupExt.onReady,

这是没有创建单例的原因吗?如果是,我该如何解决?

我正在使用 Sencha Cmd Ver 3.0.2.288 & Sencha Touch ver 2.1.1

4

1 回答 1

0

我对这个问题的解决方案是使用低级 javascript 而不是 Sencha 的框架。

如此处所述:http: //www.howtocreate.co.uk/tutorials/javascript/browserwindow

就我而言,使用

window.innerHeight

就足够了,因为我的用户不会使用 IE。

于 2014-09-19T17:37:53.073 回答