apps.jsb3不包含控制器定义 - 构建时

时间:2012-09-14 15:42:44

标签: extjs extjs4 extjs4.1

我使用了命令sencha create jsb -a http://myserver/myapp/app.html -p apps.jsb3 -v

这创建了文件apps.jsb3,当我打开这个文件时,它包含了模型和商店的所有定义(但是没有控制器)。

然后我跟着命令;

sencha build -p apps.jsb3 -v -d .这创建了2个文件。 app.all.js是模型,商店和app.js的压缩形式(它还包括在app.js中找到的应用程序控制器的定义)

ex:....controllers:["Person","Pers...同样

然后all-classes.js拥有所有模型和存储(并且再次没有控制器)

然后我将以下内容包含在我的app.html文件中

<script type="text/javascript" src="extjs/ext.js"></script>
<script type="text/javascript" src="app-all.js"></script>

最后,我将app-all.js,all-classes.js,app.html复制到服务器中的另一个文件夹中。此文件夹名为SERVERFOLDER2

现在,当我输入http://myserver/SERVERFOLDER2/app.html时,它会显示"NetworkError: 404 Not Found - http://myserver/SERVERFOLDER2/app/controller/Person.js?_dc=1347636548640"

为什么会这样,我该如何解决这个问题?

更新APP.JS

Ext.Loader.setConfig({
    enabled: true     
});
Ext.require('Ext.container.Viewport' );  
Ext.application({        
    requires: [                     
        'MyApp.Names',          
        'Ext.window.MessageBox'   
    ],                         
       models: [      
        'PersonModel',      
        'SchoolModel'                 
    ],     
    stores: [ 
        'PersonStore',
        'SchoolStore'  ,
        'GenderStore
    ],     
    views: [            
        'UserPanel',      
        'SchoolViewPanel',               
        'UpdateSchoolWindow' 
    ],            
    controllers: [        
        'SchoolController',    
        'PersonController',      
        'UserActionController',
    ],     
     name: 'MyApp', 
    refs: 
        [{         
            ref: 'viewport',   
            selector: 'viewport'
        }],     
    launch: function() {
        Ext.create('Ext.container.Viewport', {  
        layout: 'card',  
            items: [  
            { 
                xtype: 'panel',        
                items: {
                xtype: 'UserPanel' 
                }
            }
            ]
        });  

    },

    userSuccess: function() {  
        var st = Ext.getStore('PersonStore');         
        st.on('load', this.onSuccess, this, {    
            single: true,  
            delay: 100            
        }); 
        st.load();      
    },            

    onSuccess: function() {      
        this.getViewport().getLayout().setActiveItem(1); 
    }

});

0 个答案:

没有答案