两个相同的sencha触摸应用程序的实例

时间:2013-07-29 19:19:09

标签: jsp sencha-touch

我在jsp文件中有这个代码,第一次运行OK。但它第二次抛出错误。

function ${namespace}addAppInternal(divIdStr) {    
    Ext.application({
    models: [
        'OldGridDataModel'
    ],
    stores: [
        'DataStore',
        'OldDataStore'
    ],
    views: [
        'Main',
        'TouchTreeGrid'
    ],
    controllers: [
        'TouchGridController'
    ],
    name: 'MyApp',
    appFolder: '/o3-parts-web/senchaGridTouch/app',


    launch: function() {

        var cont = Ext.create('Ext.Container', {
                layout: {
                    type: 'fit'                                                                                                               
                },
                renderTo: <%=divIdStr %>,
                //itemId: 'main',
                user: '<%=username %>',
                ticket: '<%=ticket %>',
                height : 300,
                id: String(<%=divIdStr %>),
                divT: document.getElementById("${prefsHelperDiv}")
            });
        cont.add({html:'test'});
    }


});

错误是:

  

“未捕获的错误:在”

之前已经调用了Ext.setup

我知道Ext.application()运行Ext.setup()。

为什么我不能跑两次?我怎样才能避免这种情况呢?

1 个答案:

答案 0 :(得分:0)

你不能两次调用Ext.application只能调用一次这就是你得到错误的原因。你不能两次打电话,因为它是Singleton&amp;一个应用程序只是一个应用程序它不能是两个应用程序,如果这是有道理的。我建议你在加载时初始化函数,然后在你定义的函数中调用你想要的任何东西。

希望有所帮助