Pimcore Extjs 如何在不同的插件中覆盖相同的方法

Posted

技术标签:

【中文标题】Pimcore Extjs 如何在不同的插件中覆盖相同的方法【英文标题】:Pimcore Extjs how to override same method in diffrent plugins 【发布时间】:2016-07-23 13:13:47 【问题描述】:

我正在使用 pimcore 3。当发布任何先前版本时,我需要对不同的类对象进行自定义验证。我需要在不同的插件上实现不同的验证。问题是,如果我在多个插件中覆盖相同的方法,则只有一种覆盖方法有效。这就是我重写该方法的方式:

Ext.override(pimcore.object.versions, 
        publishVersion: function (index, grid) 
          //Code goes here
        
    );

我是 extjs 和 pimcore 的新手,任何帮助将不胜感激。 提前致谢。

【问题讨论】:

【参考方案1】: 我实际上不知道做这种事情的 Extjs 版本。 但我很确定你可以通过猴子修补来解决它。 通过覆盖你将插件函数包装到它的函数 示例插件代码:
var old=pimcore.object.versions.prototype.publishVersion;
pimcore.object.versions.prototype.publishVersion = function(index,grid) 
  do your stuff
   return old(index,grid);

【讨论】:

以上是关于Pimcore Extjs 如何在不同的插件中覆盖相同的方法的主要内容,如果未能解决你的问题,请参考以下文章

Pimcore:如何覆盖内置控制器

Pimcore - 如何将自定义按钮添加到对象树菜单

根据不同条件覆盖 ExtJs 4 中的日期字段格式

pimcore 调试

Pimcore - 相关对象值没有得到

如何在 MODx 网格中使用 ExtJS 插件“行扩展器”