2014-04-25 59 views
0

我是Sencha Touch和Sencha Command的新手。我下载了必要的工具来构建Sencha Touch应用程序。当我在Sencha Command中使用以下命令时,该应用生成的很好,但是当我尝试使用浏览器访问它时,我只看到了加载器。默认应用程序成功生成但不工作

sencha -sdk touch-2.3.1 generate app MyApp ./MyApp 

在Firefox上查看时,它在控制台中显示以下错误。

TypeError: Ext.Loader is undefined bootstrap.js: 7 
TypeError: Ext.application is not a function app.js: 50 

在一些调查,我发现,它是在一个名为触摸直接http://localhost/下寻找上述文件。而我有Sencha框架和我的应用程序在http://localhost/sencha/touch-2.3.1http://localhost/sencha/MyApp

MyApp目录下的某些文件具有提到的触摸目录的路径,如../../../../touch。如果我复制框架http://localhost/touch它工作正常。

为什么会这样呢?我的应用不应该参考http://localhost/sencha/touch-2.3.1文件夹的依赖关系吗?

我正在使用默认配置来构建默认应用程序。有人能指导我,我可能做错了什么?

回答

0

Sencha Cmd假设你的应用程序在Web服务器的根目录下运行......所以如果你从一个子文件夹运行它,你可能会看到像这样的问题。

您可以手动设置正确的路径到你的资源在app.js

//at the very top, before Ext.appliction() 
Ext.Loader.setConfig({ 
    enabled: true, 
    paths: { 
     'Ext' : '../touch', 
     'My' : 'app' //or wherever 
    } 
}); 

我认为应该解决您的问题,如果我理解正确。

+0

感谢您响应arthurakay。我认为你正确地理解了这个问题。我尝试了上述方法,但没有奏效。我不确定我是否理解正确。我是否需要提及我将在应用程序中使用的Ext中每个类的路径? –

+0

不,它只适用于与以前定义的任何内容不同的名称空间。 – arthurakay

相关问题