0

我正在尝试开发一个自定义 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 中扩展这个文件?如果是这样,我做错了什么?

4

1 回答 1

0

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

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

关于自定义 JS 客户端库和依赖项:http: //helpx.adobe.com/cq/kb/HowToCreateCustomClientLib.html

于 2012-12-12T22:36:52.803 回答