当我尝试扩展文件时,Widgets.js文件出错

时间:2012-12-11 23:13:06

标签: javascript cq5

我正在尝试开发一个自定义xtype,它扩展了

中定义的标签xtype
/libs/cq/tagging/widgets/source/widgets/TagInputField.js

我在另一个文件中定义了函数

CQ.tagging.customTagInputField = CQ.Ext.extend(CQ.TagInputField, { /*A whole bunch of code here */ });

CQ.Ext.reg("customtags", CQ.tagging.customTagInputField);

然而,每当我尝试启动包含我的自定义窗口小部件的页面时,我的控制台都会出现错误

TypeError: sp is undefined

spp = sp.prototype;

根据所有明智和了解谷歌。这种错误通常意味着我试图扩展一些不存在的东西。无论如何改变

CQ.Ext.extend(CQ.TagInputField,

更具体的内容,如

CQ.Ext.extend(CQ.tagging.TagInputField,

生成和错误说CQ.tagging未定义。有没有办法让我在CQ5中扩展这个文件?如果是这样,我做错了什么?

1 个答案:

答案 0 :(得分:0)

/libs/cq/tagging/widgets/source/widgets/TagInputField.js内,您会看到标记窗口小部件被声明为CQ.tagging.TagInputField,因此我相信您扩展该字段的第二种方法是正确的。

您提到您的自定义xtype位于单独的文件中 - 当您的页面加载并调用扩展代码时,是否已加载标记小部件库?您可能需要将标记类别作为依赖项添加到自定义客户端lib。

在自定义JS clientlibs和依赖项上: http://helpx.adobe.com/cq/kb/HowToCreateCustomClientLib.html

相关问题