如何扩展/覆盖预定义的核心sencha类?

时间:2012-11-28 22:49:10

标签: extjs extjs4

我需要对extjs 4.x核心库应用一些更改,以支持渲染中从右到左的方向。我已经知道直接操作ExtJS代码并不好。

我的问题是:如何通过在ext-all.js之后加载到页面的另一个js文件来执行此操作?

可以通过调用Ext.apply()

来更改预定义的sencha类方法

2 个答案:

答案 0 :(得分:3)

这实际上取决于您需要修改的内容。但我相信你的意思如下。

我有一个名为ext-mods.js的文件,该文件在ext-all.js之后加载:

Ext.onReady(function(){

    Ext.override( Ext.data.writer.Json, {
         // We want all records sent to the server be encoded as an array,
         // even if there's a single record
         allowSingle:    false,

         // We only want to send what have changed
         writeAllFields: false
    });

});

我已经更改了所有Json Writer的默认配置,但您可以同样覆盖方法(通过从库复制代码然后应用修改)。

答案 1 :(得分:2)

如果您使用的是Sencha Architect,那就更容易了。 This文章解释了这两种方法。