从extjs版本4.0.7升级到4.1.1的问题

时间:2012-11-27 15:17:53

标签: javascript extjs extjs4 extjs4.1

下午好!

我正在尝试从版本4.0.7升级到4.1.1(下载为45天免费试用版),以便在我们目前运行的应用程序中测试版本4.1并查看我们可能需要进行多少更改在正式升级之前要做的,我做的唯一一步就是将我的jsp文件指向页面顶部的新文件,如下所示:

<link rel="stylesheet" href="3rdParty/ext-4.1.1a/resources/css/ext-all.css"/>

<script type="text/javascript" charset="utf-8" src="3rdParty/ext-4.1.1a/ext-all-debug.js"></script>

在我的jsp页面中,我正在做一些非常简单的事情,只是创建一个按钮,我使用了这段代码:

  <body>
            <script type="text/javascript">

                Ext.create('Ext.Button', {
                    text: 'Test window',
                    width: 75,
                    renderTo:  Ext.getBody(),
                    handler: function() {
                        alert("the button worked"");
                    }
                });
    </script> 
    </body>

但是当我运行此页面时没有显示任何内容,当我使用谷歌浏览器的开发工具时,控制台正在向我显示以下消息:

未捕获的TypeError:无法调用未定义的方法'createChild'

当我调试代码时,错误出现在ext-all-debug.js文件中:20687

getStyleProxy: function(cls) {
       var result = this.styleProxyEl || (Ext.AbstractComponent.prototype.styleProxyEl = Ext.resetElement.createChild({


               style: {
                   position: 'absolute',
                   top: '-10000px'
               }
           }, null, true));


       result.className = cls;
       return result;
   },

我错过了什么步骤?,我是extjs中的新手,据我所知,从版本4.0.7到4.1.1的升级不应涉及与编写代码的不同方式不同的许多步骤,可以有人帮帮我吗?

非常感谢提前!

1 个答案:

答案 0 :(得分:2)

尝试将代码放在onReady块中:

<body>
<script type="text/javascript">

    Ext.onReady( function() {            
        Ext.create('Ext.Button', {
            text: 'Test window',
            width: 75,
            renderTo:  Ext.getBody(),
            handler: function() {
                alert("the button worked");
            }
        });
    });

</script> 
</body>