默认应用已成功生成但无效

时间:2014-04-25 11:20:59

标签: extjs sencha-touch

我是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/下直接在名为touch的目录中查找上述文件。我在http://localhost/sencha/touch-2.3.1http://localhost/sencha/MyApp下拥有Sencha框架和我的应用程序。

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

为什么会发生这种情况?我的应用程序不应该引用http://localhost/sencha/touch-2.3.1文件夹中的依赖项吗?

我使用默认配置来构建默认应用程序。有人可以指导我可能做错了吗?

1 个答案:

答案 0 :(得分:0)

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

您可以在app.js

中手动设置正确的资源到您的资源
//at the very top, before Ext.appliction()
Ext.Loader.setConfig({
    enabled: true,
    paths: {
        'Ext' : '../touch',
        'My'  : 'app' //or wherever
    }
});

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